Kotlin init 블록과 생성자(constructor) 완벽 정리

✨ 개요

Kotlin에서 클래스의 초기화 과정은 매우 명확하게 설계되어 있으며, 이를 위해 constructor(생성자)와 init 블록이 함께 사용됩니다. 이 두 가지는 객체 생성 시 초기 상태를 설정하는 데 중요한 역할을 합니다.


1. 🔧 기본 구조와 문법

class User(val name: String, val age: Int) {
    init {
        println("Init block: name = $name, age = $age")
    }
}

val user = User("Alice", 30)
// 출력: Init block: name = Alice, age = 30

2. ✅ 생성자의 종류와 역할


3. 🔄 실행 순서 요약

4. 🔄 차이점

항목 init 블록 constructor()
실행 시점 객체 생성 시 자동 실행 명시적으로 호출 필요
목적 공통 초기화, 검증 로직 다양한 생성 방법 제공
개수 여러 개 가능 여러 개 가능 (오버로드)
호출 순서 생성자 → init 순서 보조 생성자 → 주 생성자 → init

5. 🧾 결론



Related Posts