Scala学习 ----- 其他知识扩充

版权声明:个人原创,转载请标注! 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
  }
}

猜你喜欢

转载自blog.csdn.net/Z_Date/article/details/84336804
今日推荐