• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

9:20초 쯤 나오는 init은 클래스안에서 공통으로 쓰이는 건가요?

24.01.15 16:57 작성 조회수 98

0

안녕하세요 복치님!

왕초보 강의듣고 기본기를 쌓고싶어서 입문강의도 듣고 있습니다

initTest()안에 init은 클래스를 실행하면 무조건 실행되는 함수인건가요? 그리고 init이라는 함수가 실행 순서상 우선적으로 실행되는건지도 궁금합니다

답변 1

답변을 작성해보세요.

1

클래스 초기화할 때 생성되는 부분입니다.

말씀하신 것 처럼 우선으로 실행되며 아래의 예제 코드를 실행하면

 

class InitExample(name: String) {
    val formattedName: String

    // 초기화 블록
    init {
        println("Init block called")
        formattedName = name.uppercase()
    }

    // 일반 함수
    fun printName() {
        println("Name is $formattedName")
    }
}

fun main() {
    val example = InitExample("MyName")
    example.printName()
}

 

결과값을 아래와 같이 보실 수 있습니다

Init block called

Name is MYNAME