Kotlin 기본 자습서 - 객체 표현식 및 선언

1815 단어
객체 표현식 및 선언

객체 표현식

open class E(x: Int) {
    public open val y: Int = x
}


val ab = object : E(1){
    override val y = 14
}

코드는 클래스 E의 구성원 속성을 확장하고 y 속성을 증가시켰다.

개체 선언

object Singleton {
    val name = "doctorq"
}

성명 대상은 변수에 부치문으로 부치할 수 없습니다.

동반 대상

class MyClass { companion object Factory { fun create(): MyClass = MyClass() } } fun main(args: Array<String>) { val instance = MyClass.create() } 

이 중 대상명Factory은 생략할 수 있다.
동반 대상은 정적 전달이 아니라 운행할 때 동적 전달이다.

객체 표현식과 선언의 차이점

  • 대상 표현식은 사용처에서 즉시 초기화
  • 대상이 레이지라고 명시된 경우 첫 번째 호출 시 초기화
  • 동반 대상은 해당 클래스를 불러올 때 초기화됩니다
  • 좋은 웹페이지 즐겨찾기