본문 바로가기
Spring

[Kotlin] 정적 팩토리 메소드

by Nhahan 2023. 12. 26.
enum class IssueType {
    BUG, TASK;

    companion object {
        fun of (type: String) = valueOf(type.uppercase())
    }
}

자바 느낌의 정적 팩토리 메소드

 

 

enum class IssueType {
    BUG, TASK;

    companion object {
        operator fun invoke(type: String) = valueOf(type.uppercase())
    }
}

fun test() {
    IssueType("BUG")
}

코틀린에서 자체 지원하는 정적 팩토리 메소드

 

 

`.invoke`를 생략해도 위처럼 enum을 사용할 수 있다.

// invoke 생략 가능
IssueType.invoke("BUG") // (o)
IssueType("BUG") // (o)

 

댓글