Kotlin의 최상위 함수를 Java에서 사용하기

Kotlin DEVELOPMENT IT

Kotlin에서 다음과 같이 선언된 함수를 자바에서 사용하는 방법에 대해 알아보자.
파일명 : GetPackageFunction.kt

fun getPackege(){
  println("패키지 1")
}

fun main(){
  getPackage()
} 

자바에서 다음과 같이 호출할 수 있다.

public final class getPackageAccess{
 public static void main(String[] args){
  GetPackageFunctionKt.getPackage();
 }
}

위와 같이 자바 코드에서는 이름이 자동 생성된 코틀린 클래스에 Member Method처럼 접근이 가능하다.
자동으로 생성되는 이름은 임의로 지정해줄 수도 있다. 다음과 같이 코틀린 파일 제일 상단에 명시해주면 된다.

@file:JvmName(“GPFunction”)

위와같이 작성해준 후 Java에서 GPFunction.getPackage()와 같이 접근이 가능하다.

코틀린의 최상위 함수는 JVM에서 실행하기 위해 내부적으로 static으로 선언되기 때문에 main 블록에서 객체 생성 없이 사용될 수 있고, Java에서는 정적 함수처럼 사용 가능하다.

참고서적 : 이지스퍼블리싱 코틀린 프로그래밍

댓글 남기기