Kotlin学习之-4.3.2 包管理
Kotlin源文件是以包定义开头的:
package foo.bar
fun baz() {}
class Goo() {}
// ...
所有源文件中的的内容包括类和函数都在定义的包中。所以在上面的例子中,函数baz()
的全名是foo.bar.baz
, 类Goo
的全名是foo.bar.Goo
。
如果包没有定义,那么源文件的内容将全部属于”默认”包下, 该”默认”包没有名称。
默认包引入 Default Imports
下面的包是被默认引入到全部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.*
普通包引入
除了上述默认包引入之外,每个源文件可以包含自己的包文件夹。引入包的语法详见语法
我们可以引入一个名字,例如:
import foo.Bar // Bar 可以直接访问,不需要前缀
也可以是一个范围
import foo.*
如果有名称冲突,我们可以使用新的关键字来替换旧的有冲突的名称。
import foo.Bar
import bar.Bar as otherBar // otherBar 代表 'bar.Bar'
关键字import
不是仅用于引入类, 还可以用它来引入其他声明:
- 顶级的函数和属性
- 定义的对象声明区的函数和属性
- 枚举常量
和Java不同的是,Kotlin没有单独的静态引入import static
语法, 所有这些声明都是通过import
关键字来引入的
顶级声明的可见性
如果一个顶级声明被标记为私有的private
,那这个声明仅会在该文件中可见。详见可见性
作者:farmer_cc 发表于2017/6/8 20:07:54 原文链接
阅读:104 评论:0 查看评论