scala private

时间:2023-03-09 03:29:26
scala private
class Person private(val name:String)

private 修饰整个类的参数,其实效果类似于java的私有化构造方法,无法通过new Person(..) 来实例化对象。单例模式就用到了这一点

class Person{
private Person(String name){
...
}
}
class Person(private val name:String)

private 修饰 类参数,其效果是在java中类似于将该参数声明为私有。只能在类内部访问。

class Person{
private String name; }

字段被private修饰,但是还可以在伴生对象和同类其他对象中访问(例如,比较两个人的年龄),但是如果字段被private[this]修饰,那么该字段只能在字段所在的类中访问,即使是,伴生对象和同类的其他对象都不可以访问。