Kotlin Packages

作者: CyrusChan | 来源:发表于2017-06-21 09:15 被阅读19次

    原文地址

    Packages(包)

    源文件可以从包声明开始:

    package foo.bar
    
    fun baz() {}
    
    class Goo {}
    
    // ...
    

    所有源文件的内容(例如类和函数)被包声明包含。所以在之上的例子当中,baz()的全称是foo.bar.baz,Goo的全称是foo.bar.Goo。如果包没被指定,这样文件的内容属于没有名称的”default”包

    Default Imports(默认导入)

    一些包被默认导入:
    • 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.*

    Imports(导入)

    除了默认导入,每个文件包含它自己的导入目录。导入的语法在 grammar中有描述.
    我们可以导入任一一个名称,例如:

    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关键字。

    Visibility of Top-level Declarations(顶层声明的可见性)

    如果顶层声明被标记为private,它对它所声明的文件是私有的(参看可见性修饰符

    相关文章

      网友评论

        本文标题:Kotlin Packages

        本文链接:https://www.haomeiwen.com/subject/xxjzqxtx.html