包和引入
1.包
2.作用域规则
3.串联式包语句
4.文件顶部标记法
5.包对象
6.包可见性
7.引入
8.任何地方都可以声明引入
9.重命名和隐藏方法
10.隐式引入
1.包
如下,Pack类名可以在任意位置以com.test.Pack访问到了。
2.作用域规则
所有父包中的内容都在作用域内。
3.串联式包语句
若指定了报名
package com.horstmann.impatient {
// com 和 com.horstmann的成员在这里都不可见
package people {
class Person {
val name: String
}
}
}
因为com.horstmann.impatient 已经指定了具体的包路径,其他路径可定是不可以访问的啦。
4.文件顶部标记法
以上部分的包引入,是嵌套标记法。其实,大多数,都是使用文件顶部标记法
在文件顶部直接引入
package com.horstmann.impatient
5.包对象
每个包都可以有一个包对象。
6.包可见性
同java一样,没有被声明为public、private、protected的类成员在包含该类的包中可见。也就是default是同包可见。
7.引入
引入某个包的全部成员:
8.任何地方都可以声明引入
不一定必须在文件顶部声明引入。任何地方都可以。
9.重命名和隐藏方法
如果你想要引入包中的几个成员,可以使用选取器:
选取器语法还允许你重命名选到的成员:
这样,JavaHashMap就是java.util.HashMap, 而HashMap则对应scala.collection.mutable.HashMap
HashMap => _将隐藏某个成员
虽然导入的两个包中都有HashMap,但是由于java.util.HashMap隐藏了,因此,HashMap只会去引用第二个包了。
10.隐式引入
java.lang总是被引入
作者:凌晨六点半
出处:http://www.cnblogs.com/sunnyDream/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。
如果您认为这篇文章还不错或者有所收获,您可以通过右边的“打赏”功能 打赏我一杯咖啡【物质支持】,也可以点击右下角的【好文要顶】按钮【精神支持】,因为这两种支持都是我继续写作,分享的最大动力!