Kotlin 앱 프로그래밍

(코틀린) 주 생성자와 보조 생성자

쿠카이든 2023. 5. 22. 15:15
728x90
  • 주 생성자와 보조 생성자는 모두 클래스의 생성자이다.
    • 따라서, 객체를 생성할 때 호출되는 건 똑같다.
    • 그리고 클래스 안에 주 생성자만 선언하든, 보조 생성자만 선언하든 그것은 개발자 마음이다.
  • 단지, 주 생성자와 보조 생성자를 모두 선언할 경우 보조 생성자로 객체를 생성할 때에는 반드시 주 생성자가 실행되게 만들어야 한다는 규칙이 있다.
    • 이러한 규칙은 필수 매개변수와 실행 구문을 주 생성자에 작성하고 보조 생성자가 실행될 때 주 생성자도 함께 실행되게 하려는 의도이다.
  • 결국 객체를 여러 가지 형태로 생성할 수 있도록 생성자의 매개변수를 다양하게 구성할 때 생성자의 공통된 코드는 주 생성자에 작성하라는 의미로 이해할 수 있다.

 

class User(name: String){
    constructor(name: String, count: Int): this(name){
        println("constructor(name: String, count: Int) call...")
    }
}

fun main() {
    val user = User("kuka",20)
}

실행 결과

 

728x90