Scala语言的访问修饰符
2017-10-13 16:34
232 查看
一、访问修饰符。
scala的访问修饰符与java当中的相同,但是也有其独特的规定和应用。
在java中省缺值是default(Package),作用域的访问如上图所示,简单说就是public能被同项目(World语言环境)的所有文件访问。protected:同类,同包,子类(可以在不同包下)……
在Scala里面就出现下面这几种类型:这里的省缺修饰符default,就是public。
一下是编写的环境:
Class:类
Companion:(伴生对象(相当于一个java里面的静态类),必须与所要陪伴的类放在同一个文件中)
Subclass:子类
Package:包“
World:同一文件
二、为访问修饰符配置作用域
Scala 的访问修饰符可以添加作用域参数。作用域的语法如下:
private[x]或protected[x]
其中x代表某个包,类或者单例对象,表示可以访问这个private或 protected的范围直到X。
通过为访问修饰符添加作用域参数,可以非常精确的控制所定义的类型能够被其它类型访问的范围。尤其是可以支持Java语言支持的 package private,package protected 等效果。
scala的访问修饰符与java当中的相同,但是也有其独特的规定和应用。
在java中省缺值是default(Package),作用域的访问如上图所示,简单说就是public能被同项目(World语言环境)的所有文件访问。protected:同类,同包,子类(可以在不同包下)……
在Scala里面就出现下面这几种类型:这里的省缺修饰符default,就是public。
一下是编写的环境:
Class:类
Companion:(伴生对象(相当于一个java里面的静态类),必须与所要陪伴的类放在同一个文件中)
Subclass:子类
Package:包“
World:同一文件
二、为访问修饰符配置作用域
Scala 的访问修饰符可以添加作用域参数。作用域的语法如下:
private[x]或protected[x]
其中x代表某个包,类或者单例对象,表示可以访问这个private或 protected的范围直到X。
通过为访问修饰符添加作用域参数,可以非常精确的控制所定义的类型能够被其它类型访问的范围。尤其是可以支持Java语言支持的 package private,package protected 等效果。
package bobsrockets { package navigation { //如果为private class Navigator,则类Navigator只会对当前包navigation中所有类型可见。 //即private默认省略了[X],X为当前包或者当前类或者当前单例对象。 //private[bobsrockets]则表示将类Navigator从当前包扩展到对bobsrockets包中的所有类型可见。 private[bobsrockets] class Navigator { protected[navigation] def useStarChart() {} class LegOfJourney { private[Navigator] val distance = 100 } private[this] var speed = 200 } } package launch { import navigation._ object Vehicle { //private val guide:表示guide默认被当前单例对象可见。 //private[launch] val guide:表示guide由默认对当前单例对象可见扩展到对launch包中的所有类型可见。 private[launch] val guide = new Navigator } } }
相关文章推荐
- Scala 访问修饰符
- Scala 访问修饰符
- Java语言入门教程(三):Java语言的访问权限修饰符
- InfoQ - 促进软件开发领域知识与创新的传播 搜索关键词 登录 En |中文 |日本 |Fr |Br 966,690 一月 独立访问用户 语言 & 开发 Java Clojure Scala
- scala(5)-----访问修饰符
- Scala访问修饰符
- Scala 访问修饰符
- Scala学习之包、引用和访问修饰符
- C#语言中五种访问修饰符
- scala基础-访问修饰符
- java语言访问 限制修饰符
- Scala:访问修饰符、运算符和循环
- Scala访问修饰符
- 面向 Java 开发人员的 Scala 指南:包和访问修饰符
- scala的访问修饰符
- Scala学习(十)--- 访问修饰符
- Java语言中的-----访问修饰符
- Java语言中的访问修饰符
- Java语言中的访问修饰符
- Scala基础教程(三):访问修饰符、运算符