版权声明:个人原创,转载请标注! https://blog.csdn.net/Z_Date/article/details/84336804
单例
java:单例模式,创建一个全局唯一的实例,本质static
scala单例对象:使用object修饰的对象,就是单例对象。
解释:object修饰的对象,里面的方法和属性默认都是static修饰的。单例对象。
伴生对象:经常使用object修饰的对象,作为类的伴生对象。与类同名
/**
* 普通类
*/
class Student {}
/**
* 伴生对象
*/
object Student{}
作用 1在伴生对象里定义的属性和方法默认都是static修饰的
2 伴生对象可以访问类中私有的属性和方法
3 如果不想让伴生对象访问本类中的属性或方法可以使用this修饰
/**
* 普通类
*/
class Student {
private var name:String="zhangsan"
private[this] var age:Int=23
}
/**
* 伴生对象
*/
object Student{
def main(args: Array[String]): Unit = {
val st=new Student
// 伴生对象可以访问类中私有的属性和方法
st.name
}
}