Scala中权限访问
Scala中的访问权限和Java一致,采用public, private, protected三种访问权限。在不声明访问权限的情况下,Scala使用public作为默认权限private为私有属性,只有在类的内部和伴生对象中可用protected为受保护权限,同类、子类可以访问,但是同包不行Scala中的private限定符比Java更严格,在嵌套类情况下,外层类甚至不能访问被嵌套类的私有成员
Scala
object day21 {
//访问控制权限
// 类的内部方法 伴生对象中的方法 类的外部(对象,访问) 子类对象,访问 子类方法是否可以访问 另一个对象的属性
// 默认权限(public) 可 可 可 可 可 可
//private 可 可 不可 不可 不可 不可
//protected 可 可 不可 不可 可 不可
class Student{
//1.默认权限。类似于java中的public
val name = "小花"
//2.私有属性。类的内部。不能继承!
private val score = 59
//3.受保护的。可以继承
protected val car = "宝马香车"
def say():Unit = {
println(name,score)
}
}
object Student{
def run(obj:Student):Unit = {
println(obj.name,obj.score)
}
}
//子类
class SubStudent extends Student{
def test():Unit = {
println(this.name,this)
}
}
object day21_1{
def main(args: Array[String]): Unit = {
val s = new Student()
s.
val s1 = new SubStudent
s1.
}
}
}