본문 바로가기
Kotlin

[Kotlin] @JvmOverloads

by Nhahan 2025. 3. 20.

@JvmOverloads

default parameter가 있는 함수를 자바에서 호출할 수 있도록 여러 오버로드를 생성한다. (자바는 기본값을 지원하지 않으므로 자바에서 defulat parameter가 있는 코틀린의 함수를 사용하려면 필수적)

 

@JvmOverloads
fun findMessages(sender: String, type: String = "text", maxResults: Int = 10) {}

원하는 함수 위에 @JvmOverloads를 선언만 해두면,

public static void findMessages(String sender, String type, int maxResults) {}
public static void findMessages(String sender, String type) {}
public static void findMessages(String sender) {}

자바에서는 이와 같이 컴파일 되어 사용 가능하다.

 

댓글