Scala 访问修饰符学习笔记

在 Scala 中,访问修饰符用来限制对象、类、方法和变量的可见性和访问权限。Scala 中提供了两种访问修饰符: privateprotected

private 访问修饰符

private 访问修饰符用来定义只能在当前类中访问的成员。对于使用了 private 修饰符的成员,在外部无法直接访问。

例如:

scalaCopy Code
class Person{ private var name:String = "Tom" def showName()={ println("The name is "+name) } } object Test{ def main(args:Array[String])={ val p = new Person() //错误示例,编译器会提示“private" name 在 Person 中不可见 //println(p.name) //正确示例 p.showName() } }

在上例中,我们使用了 private 修饰符来隐藏 name 变量,只有内部的 showName 方法才能通过对象来访问 name 变量。

protected 访问修饰符

protected 访问修饰符用来定义只能在当前类和其子类中访问的成员。外部和其他类都无法直接访问 protected 成员。

例如:

scalaCopy Code
class Shape{ // protected 修饰符 protected var color:String = "red" } class Point extends Shape{ def showColor()={ // color 可以在子类中访问 println("The color is "+color) } } object Test{ def main(args:Array[String])={ val p = new Point() //错误示例,编译器会提示“protected" color 在 Shape 中不可见 //println(p.color) //正确示例 p.showColor() } }

在上例中,我们使用了 protected 修饰符来定义 color 成员,只有继承了 Shape 的子类才能访问 color 成员。

以上是 Scala 中访问修饰符的学习笔记及实例,希望对你有所帮助。