Kotlin 教學【從零開始學 Kotlin 程式設計】Java 和 Kotlin 混合使用 - Kotlin 註解 @JvmName
【從零開始學 Kotlin 程式設計】
線上教學課程目錄:https://bit.ly/2Kx7GrM
Youtube 課程播放清單:https://bit.ly/3qJ5a5Q
JvmName
Kotlin 註解 @JvmName 範例
Java 使用 Kotlin 發生函數命名衝突時,可以使用注解 @JvmName 解決衝突問題。
範例檔案目錄結構
注意檔名錯誤和檔案放錯位置,會導致編譯錯誤,或是無法順利呼叫使用,需多加留意。
- Main.kt 放在 src/main/kotlin 目錄裡面。
- JavaClassDemo.java 放在 src/main/java/com.teachable.hkt 目錄裡面。
Main.kt
package com.teachable.hkt //沒有設定 package 名稱,Java 無法順利呼叫使用
@JvmName("myKotlinFun")
fun kotlinFun() {
println("英文函數名稱")
}
fun main() {
kotlinFun()
}
JavaClassDemo.java
今天 Java 呼叫 Kotlin 非類別時,需檔案名稱加上kt,例如檔名為:「Main.kt」呼叫該檔案中非類別的函數,即為「MainKt.函數名稱」。而當名函數發生命名衝突時,可以加入註解 @JvmName,解決命名衝突問題。
package com.teachable.hkt;
public class JavaClassDemo {
public static void main(String[] args) {
//MainKt.kotlinFun();//Kotlin 沒有使用 @JvmName,直接呼叫函數名稱
MainKt.myKotlinFun();//Kotlin 使用 @JvmName,直接改呼叫 JvmName 名字,即可以解決命名衝突問題
}
}
那這次的課程就介紹到這邊囉~
順帶一提,KT 線上教室,臉書粉絲團,會不定期發佈相關資訊,不想錯過最新資訊,不要忘記來按讚,加追蹤喔!也歡迎大家將這套課程分享給更多人喔。
我們下次再見囉!!!掰掰