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에서는 정적 함수처럼 사용 가능하다.
참고서적 : 이지스퍼블리싱 코틀린 프로그래밍