[kotlin]Object Expression
2018. 6. 18. 17:28ㆍkotlin-이론
Object Expression and Declarations
Object의 용도
- 어떤 클래스에서 조금 변형된 객체를 생성할 때
- 새로운 subclass의 명시적인 선언 없이 객체생성
Object Expression
-Java의 익명객체와 같은 역활을 한다. object:Runnable을 쓰는 순간 바로 객체가 생성되는 것이고 변수에도 집어 넣을 수 있다.
object Expression이 없을 때는 클래스를 만들어서 사용했지만
하지만 object Expression을 사용하면 클래스의 생성없이 아래와 같이 사용할 수 있다.
그리고 여기서 람다식을 사용해주면 훨씬 간단하게 사용할 수 있다.
그리고 꼭 상속을 받을 필요는 없다. 객체명.a 객체명.b와 같이 접근할 수 있다.
Object Expression 제약 조건
익명객체가 public function이나 public property에서 호출될때 super타입으로 동작되서 익명객체에 추가된
멤버에 접근 불가능하다.
Object Expression 특징
1. 익명클래스 밖에있는 변수에 접근할 수 있다. 자바에서는 변수가 final이여야 했지만 코틀린에서는 상관없다.
'kotlin-이론' 카테고리의 다른 글
Kotlin Renewal (0) | 2020.11.13 |
---|---|
[kotlin] Object Declarations (0) | 2018.06.18 |
[kotlin] Nested Class And Inner Class (0) | 2018.06.18 |
[kotlin]Data Class (0) | 2018.06.18 |
[kotlin] kotlin 강의 properties2 (0) | 2018.06.17 |