인프런 커뮤니티 질문&답변

휘리릭님의 프로필 이미지
휘리릭

작성한 질문수

[입문편] 안드로이드를 위한 코틀린(Kotlin) 문법

Class 란

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

작성

·

191

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

 

휘리릭님의 프로필 이미지
휘리릭

작성한 질문수

질문하기