Kotlin – “Abstract Class”

Abstract Class 를 통해서 알아야 할 것 : 여러 클래스를 한 타입으로 묶어주어서 공통되는 메버를 상속받는 모든 클래스에 전파하는 용도로 쓰는 클래스이다. 0

Kotlin – “Extension function with Inheritance”

Extension function with Inheritance 를 통해서 알아야할 것 : 상속에 대해서 확장함수와 멤버함수의 특징이 서로 다르다. 참조변수가 가르치는 객체타입을 따를것인가. 참조 변수 타입을 그대로 따를것인가가 다르다. 확장함수의 상속관계 : 참조변수 타입 그대로를 사용멤버함수의 상속관계 : 참조변수가 가르치는 객채를 사용 one 클래스와 two 클래스는 상속관계이고, main 함수에서 타입은 one 인 변수에 two 객체를 가르치는 변수를 선언하였다. […]

Kotlin – “Extension Function with Companion Object”

Extension Function with Companion Object 를 통해서 알수 있는것 : 컴페니언 오브젝트(동반자 객체)에 확장함수를 주입해서 생성된 객채들에 접근. 연산하는 함수를 만들수있다.단 이때는 동반자 객체는 클래스 이름만으로 접근할수도 있긴 하지만, 확장함수를 선언할때 자칫 클래스 자체에 멤버 함수가 추가되기떄문에 Companion 식별자를 반드시 적어주어야 한다. 0

Kotlin – Null Receiver(Null 리시버)

Null Receiver 를 통해서 알수 있는것 : 참조 변수에 null 이 지정되어있어도 함수 호출이 가능하게 할 수 있다. 코드로 보면 바로 알수 있다. 0

Kotlin – “Object”

Object 를 통해서 알아야할 것 : 오브젝트 선언은 object 키워드를 통해서만 가능하고, 이렇게 선언된 객체는 프로그램 전체에서 공유할 수 있는 하나뿐인 객체이다. 이것은 쓰레드 세이프하게 접근할 수있다. 주의해야할점 : 어떤점이 Companion Object 와 다른가? Kotlin – “Companion Object”–> 오브젝트는 초기화가 실제로 처음 접근할때 뒤늦게된다(lazy loading- lazy init)(컴페니언 오브젝트는 상응하는 클래스가 로드될때 초기화 되서 접근 가능하게 되어있다. […]

Kotlin – “Companion object”

companion object 을 통해서 알수있는 것 : 어떤 클래스의 모든 인스턴스가 공유하는 객채를 만들고 싶을 때 사용한다. 주의해야할점 : 어떤점이 object 와 다른가? Kotlin – “Object”–> 컴페니언 오브젝트는 상응하는 클래스가 로드될때 초기화 되서 접근 가능하게 되어있다. (오브젝트는 초기화가 실제로 처음 접근할때 뒤늦게된다(lazy loading- lazy init) (A companion object is initialized when the corresponding class is […]

Kotlin – Nullable 타입, null 1

Nullable 타입과 null 를 위해서 알아야할 것 : 코틀린은 자바의 널익셉션(NullException)에 대인 사람들이 이를갈고(?) 만든 언어이기때문에 Null에대한 특별한 특징들이 많다.타입 이름 뒤에 ?를 붙이면 Nullable 타입으로 만들수있는데 null 값으로 지정하여서 참조 변수가 어떤 객체를 가르치지 않는 것을 말하는 키워드이다.null 은 Nothing 타입이다. 0

Kotlin – “Any”

Any 을 위해서 알아야할 것 : 어떤 클래스가 아무 클래스도 상속하지 않았으면 자동으로 Any 를 상속한다. 모든 코틀린 클래스는 Any클래스를 상속하는것을 보장한다. Any 클래스는 equals(), hashCode(), toString() 의 멤버 함수가 있다. 즉, 모든 클래스는 equals()(== 연산자를 오버로딩함)hashCode()(객체 고유의 해시코드를 반환)toString()(내용을 String 타입으로 변환)을 갖는다. 0

Kotlin – “Unit”

Unit 을 위해서 알아야할 것 : 함수를 작성시에 반환값이 필요하지 않을때 주로 사용한다. return 뒤에 표현식을 적지 않고 단독으로 사용하고 혹시 쓰고싶으면 써도 compile 에는 문제가 없다. 0

Kotlin – “Nothing”

실행 흐름이 도달할수 없는 구역까지 나타내기 위한 특수한 타입. Nothing 은 인스턴스가 없다. 주로 함수가 정상적으로 끝나지 않는다 라는것을 명시적으로 표현하는 타입이다. Nothing 은 return  타입이나 인자(parameter)로만 쓸수있고 변수사용은 불가능하다. 어떤 함수에서 중간에 예외로 던지는 로직이 있을때 함수가 정상적으로 끝날수 없다. 그럴때 return 타입을 Nothing 으로 두면 compiler 가 정상종료되지 않는 함수인것을 컴파일타임때 알 수 […]