Kotlin包
源文件可以從包聲明開始:
package foo.bar
fun baz() {}
class Goo {}
// ...
源文件的所有內容(如類和函數)都包含在聲明的包中。 所以,在上面的例子中,baz()的全稱是foo.bar.baz,而Goo的全稱是foo.bar.Goo。
如果沒有指定包,則這樣的文件的內容屬於沒有名稱的「default」包。
默認導入
默認情況下,將多個軟件包導入到每個Kotlin文件中:
-   
kotlin.* -   
kotlin.annotation.* -   
kotlin.collections.* -   
kotlin.comparisons.*(since 1.1) -   
kotlin.io.* -   
kotlin.ranges.* -   
kotlin.sequences.* -   
kotlin.text.* 
根據目標平臺導入其他軟件包:
JVM
-   
java.lang.* -   
kotlin.jvm.* 
-   
 JS
-   
kotlin.js.* 
-   
 
導入
除了默認導入,每個文件可能包含其自己的導入指令。有關導入語法的描述:(http://www.yiibai.com/kotlin/grammar.html#import)。
可以導入單個名稱,例如:
import foo.Bar // Bar is now accessible without qualification
或包範圍的所有可訪問內容(包,類,對象等):
import foo.* // everything in 'foo' becomes accessible
如果有名字衝突,可以通過使用as關鍵字來本地重命名衝突實體來消除歧義:
import foo.Bar // Bar is accessible
import bar.Bar as bBar // bBar stands for 'bar.Bar'
import關鍵字不限於導入類; 也可以使用它來導入其他聲明:
- 頂層的函數和屬性;
 - 在對象聲明中聲明的函數和屬性;
 - 枚舉常數
 
與Java不同,Kotlin沒有單獨的「import static」語法; 所有這些聲明都使用常規import關鍵字導入。
頂層聲明的可見性
如果頂級聲明被標記爲「private」,則對其聲明的文件是私有的(請參閱「可見性修飾符」)。