Kotlin 學(xué)習(xí)筆記(三) 包與導(dǎo)入
這是一個(gè)Kotlin系列的教程,目的是為了使自己記憶和理解的更加深刻,將會(huì)添加對應(yīng)的Java代碼用于對比學(xué)習(xí)和更好的理解。
目錄
包
源文件通常以包聲明開頭:
package foo.bar
fun baz() {}
class Goo {}
// ……
源文件所有內(nèi)容(無論是類還是函數(shù))都包含在聲明的包內(nèi)。 所以上例中 baz() 的全名是 foo.bar.baz、Goo 的全名是 foo.bar.Goo。
如果沒有指明包,該文件的內(nèi)容屬于無名字的默認(rèn)包。
默認(rèn)導(dǎo)入
有多個(gè)包會(huì)默認(rèn)導(dǎo)入到每個(gè) Kotlin 文件中:
- kotlin.*
- kotlin.annotation.*
- kotlin.collections.*
- kotlin.comparisons.* (自 1.1 起)
- kotlin.io.*
- kotlin.ranges.*
- kotlin.sequences.*
- kotlin.text.*
根據(jù)目標(biāo)平臺(tái)還會(huì)導(dǎo)入額外的包:
JVM:
JS:
導(dǎo)入
除了默認(rèn)導(dǎo)入之外,每個(gè)文件可以包含它自己的導(dǎo)入指令。 導(dǎo)入語法在語法中講述。
可以導(dǎo)入一個(gè)單獨(dú)的名字,如.
import foo.Bar // 現(xiàn)在 Bar 可以不用限定符訪問
也可以導(dǎo)入一個(gè)作用域下的所有內(nèi)容(包、類、對象等):
import foo.* // “foo”中的一切都可訪問
如果出現(xiàn)名字沖突,可以使用 as 關(guān)鍵字在本地重命名沖突項(xiàng)來消歧義:
import foo.Bar // Bar 可訪問
import bar.Bar as bBar // bBar 代表“bar.Bar”
關(guān)鍵字 import 并不僅限于導(dǎo)入類;也可用它來導(dǎo)入其他聲明:
頂層函數(shù)及屬性;
在對象聲明中聲明的函數(shù)和屬性;
枚舉常量。
與 Java 不同,Kotlin 沒有單獨(dú)的“import static”語法; 所有這些聲明都用 import 關(guān)鍵字導(dǎo)入。
頂層聲明的可見性
如果頂層聲明是 private 的,它是聲明它的文件所私有的(參見 可見性修飾符)。
- QQ郵箱:1050629507@qq.com
- 上一篇:Kotlin 學(xué)習(xí)筆記(二) 基本類型
- 下一篇:Kotlin 學(xué)習(xí)筆記(四) 控制流
- 參考文檔:Kotlin 語言中文站