Kotlin 주 생성자와 부 생성자의 차이

이성진·2023년 11월 23일
0

TIL

목록 보기
82/95
post-thumbnail

Android Kotlin의 주생성자와 부생성자의 차이점

Android 앱 개발에 일반적으로 사용되는 프로그래밍 언어인 Kotlin에서 클래스는 주 생성자와 하나 이상의 부 생성자를 가질 수 있습니다. 효과적인 Kotlin 프로그래밍을 위해서는 이러한 생성자의 차이점을 이해하는 것이 중요합니다.

주 생성자

  • 위치 : 클래스 헤더에 정의됩니다.
  • 목적 : 클래스를 초기화하는 가장 일반적인 방법입니다. 클래스에 기본 생성자가 있으면 해당 생성자가 먼저 실행됩니다.
  • 단순성 : 일반적으로 간결하여 클래스 헤더에서 직접 속성을 선언하고 초기화할 수 있습니다.
  • 초기화 블록 : 이 init 블록은 추가 초기화 코드를 위한 주 생성자와 함께 사용됩니다.
class User(val name: String, var age: Int)

부 생성자

  • 위치 : 클래스 본문 내에세 정의됩니다.
  • 목적 : 특히 다른 초기화 프로세스가 필요할 때 클래스를 초기화하는 추가 방법을 제공합니다.
  • 기본 위임 : 키워드를 사용하여 다른 부 생성자를 통해 직접 또는 간접적으로 주 생성자에 위임해야 합니다 this
  • 유연성 : 더 유연하여 기본 생성자에 없는 다양한 초기화 논리 또는 추가 매개변수를 허용합니다.
class User(val name: String, var age: Int) {
    constructor(name: String) : this(name, 0) {
        // additional initialization code
    }
}

주요 차이점

  • 선언 : 주 생성자는 클래슿 ㅔ더의 일부이므로 더 간결해집니다. 부 생성자는 클래스 본문내에서 선언됩니다.

  • 초기화 코드 : 주 생성자는 일반적으로 init 추가 초기화를 위해 블록을 사용합니다. 부 생성자는 초기화 코드를 본문에 직접 포함할 수 있습니다.

  • 위임 : 부 생성자는 주 생성자(존재하는 경우)에 위임해야 합니다. 주 생성자는 부 새성자의 본문보다 먼저 실행됩니다.

  • 사용 사례 : 간단한 초기화를 위해 주 생성자를 사용합니다. 부 생성자는 추가 논리나 다양한 매개 변수가 필요한 보다 복잡한 시나리오에 유용합니다.

결론

Kotlin의 주 생성자와 부 생성자의 차이점을 이해하는 것은 다양한 초기화 방법을 사용ㅇ하여 클래스를 만드는 데 기본입니다. 주 생성자는 더 간결하고 간단한 초기화에 적합한 반면 , 부 생성자는 더 복잡한 시나리오에 유연성을 제공합니다.

profile
2023.08 ~ Android Kotlin 공부

0개의 댓글