Kotlin external 키워드

외부 호출(external)

Kotlin에서 external 키워드는 Kotlin 코드에서 직접 작성하지 않고 다른 언어로 작성된 함수나 클래스를 선언하는 데 사용된다. 일반적으로 Kotlin은 JVM에서 실행되므로 external 키워드는 주로 Java와 상호 작용하기 위해 사용된다.

external 키워드는 함수나 클래스의 본문이 Kotlin 코드에 포함되지 않고 외부에서 제공되는 것임을 나타낸다. 예를 들어, Kotlin에서 Java의 메서드나 클래스를 호출하거나 Java 코드에서 Kotlin의 메서드나 클래스를 호출할 때 external 키워드를 사용할 수 있다.

external 키워드는 일반적으로 네이티브 메서드를 선언할 때나, JNI(Java Native Interface)를 통해 C나 C++로 작성된 코드를 호출하거나 JavaScript 코드를 호출 할 때 사용한다. 이렇게 함으로써 Kotlin 코드에서 외부 네이티브 코드에 접근하고 상호 작용할 수 있다.

간단한 형태는 아래와 같다.

external fun foo (...) {...}

다음은 Kotlin에서 external 키워드를 사용하여 JNI와 상호 작용하는 간단한 예시이다.

external fun nativeMethod(): Int

fun main() {
    val result = nativeMethod()
    println("Result from native method: $result")
}

위의 코드에서 nativeMethod()는 Kotlin 코드 내에서 직접 구현되지 않고 외부에서 제공된다. 이 메서드는 JNI를 통해 C나 C++로 작성된 네이티브 코드에 의해 제공될 것으로 예상된다.




최종 수정 : 2024-02-12