scala的属性访问权限有四种:
默认访问权限;protected访问权限;private访问权限;private[this]访问权限
package Test1104
//访问控制权限
// 类的内部方法 伴生对象中的方法 类的外部(对象,访问) 子类对象,访问 子类方法是否可以访问 另一个对象的属性
//默认权限(pubilc) 可 可 可 可 可 可
//private 可 可 不可 不可 不可 不可
//protected 可 可 不可 不可 可 不可
//private[this] 可 不可 不可 不可 不可 不可
class Student{
//1.默认权限。类似于java中的public
val name = "小花"
//2.私有属性。类的内部。不能继承!
private val score = 59
//3.受保护的.可以继承!
protected val car = "宝马香车"
def say():Unit ={
println(name,score,car)
}
}
object Student{
def run(obj: Student): Unit = {
println(obj.name, obj.score, obj.car)
}
}
//子类
class SubStudent extends Student{
def test():Unit ={
println(this.name,this.car)
}
}
object Test1104 {
def main(args: Array[String]): Unit = {
val s = new Student()
println(s)
val s1 = new SubStudent()
println(s1)
}
}