extends vs implements

개발/Java 2021. 10. 18. 08:20

Extends 클래스가 클래스를 상속받을 때, 인터페이스가 인터페이스를 상속받을 때 extends를 사용한다. 정의, 선언은 모두 부모 클래스가 하며, 상속받는 자식 클래스는 오버라이딩 없이 부모 클래스의 메소드와 변수를 사용 가능하다. JAVA는 부모 클래스가 두 개 이상 존재할 수 없다. Implements 클래스가 인터페이스를 상속하면 implements를 사용한다. interface를 여러 개 상속 받을 수 있다. 부모 클래스는 선언만 하며, 자식 클래스에서 정의를 오버라이딩하여 사용한다.

Class 'kotlin.Unit' was compiled with an incompatible version of Kotlin. The binary version of its metadata is 1.5.1, expected version is 1.1.16 빌드 에러

개발/Gradle 2021. 10. 16. 08:20

안드로이드 스튜디오에서 app 빌드를 하였는데 다음과 같이 "Class 'kotlin.Unit' was compiled with an incompatible version of Kotlin. The binary version of its metadata is 1.5.1, expected version is 1.1.16." 에러가 발생하였다. 원인은 코틀린의 버전이 낮아서 발생하는 것이었다. build.gradle 파일을 아래와 같이 수정하니 정상적으로 빌드가 되었다.

Article Thumbnail
Integer vs Int

개발/Java 2021. 10. 15. 08:20

기본(primitive) 타입: Int null이 안됨 객체여서 내부적으로 빌트인 메소드(연산자)를 쓸 수 있다. 레퍼(Wrapper) 타입: Integer 제네릭스에서 사용할 수 있다. null 처리가 가능하지만, 언박싱(Integer -> Int)을 하지 않으면 연산이 불가능하다.

Map()를 활용하여 Object로 구성된 배열에서 중복 제거하기

개발/NestJS 2021. 10. 14. 08:20

이전의 포스트에서 중복된 Object로 구성된 배열에서 ES6의 filter()를 사용하여 중복을 제거하였었다. Object로 구성된 배열에서 중복 제거하기 User [{"id": 1, "name": "testman", "description": "For Test" ... }, ....]와 같이 구성되어 있는 다수의 리턴 값에서 중복을 제거할 일이 있었다. 원래는 Set을 활용하여 중복 요소를 제거하려 하였지만, 리턴.. eight20.tistory.com User [{"id": 1, "name": "testman", "description": "For Test" ... }, ....]와 같이 구성되어 있는 다수의 리턴 값에서 중복을 제거할 때, 아래와 같이 ES6의 Map( )를 사용하여 중복을 제거하..