0017.包、类、对象、成员的访问权限

package com.jn.scala

/**
* 包、类、对象
* Created by admin on 2015/11/13.
*/

package spark{
 
package navigation{
 
private [spark] class Navigator{ //Navigator的可见度扩展到包spark,包spark的所有类、对象和包可见Navigator
   
protected [navigation] def useStarChat(){} //当前类可以用,子类可以用,包navigation可用
   
class LegOfJoutney{
     
private [Navigator] val distance = 100
   
}
   
private [ this ] var speed = 200 //只能有当前对象可用,非常严格
 
}
 
package launch{
   
import navigation._
   
object Vehicle{
     
private [launch] val guide = new Navigator
    }
  }
  }

}
class PackageOps_Advanced{
 
import PackageOps_Advanced.power //引入对象的属性
 
private def canMakeItTrue = power > 10001 //使用对象的属性
}
object PackageOps_Advanced {
 
private def power = 10000
 
def makItTrue(p: PackageOps_Advanced): Boolean={
   
val result = p.canMakeItTrue //调用类的方法
   
result
  }
}

你可能感兴趣的:(spark,scala,scala)