scala 重点理解

一、private[this] 对象私有属性
函数

在scala中,若是使用private[this],表示该属性只能属于当前对象私有,不能被当前对象的类方法使用this

class Person {
  private[this] var name ="蓝狐"
  def isName(other:Person)=name<other.name
}

二、class默认构造器scala

class Person {
  private[this] var name ="蓝狐"
  
  def this(name:String){
    this()
    this.name=name
  }
  def sayHello(){
    println(this.name)
  }
}

scala中class类默认会有构造器,若是想重载构造器(创建附属构造器)须要调用默认构造code

若是不想使用默认构造器,只想使用咱们本身定义的附属构造器能够用private关键字在类名称后面声明对象

class Person private {
  private[this] var name ="蓝狐"
  
  def this(name:String){
    this()
    this.name=name
  }
  def sayHello(){
    println(this.name)
  }
}

这就涉及到了scala中的类权限问题,private [类名]的意思是这个类也有权限访问该函数,private【this】表示只有当前实例才有权限访问,记住当前实例,即便是同一个类下的不一样对象也不能够class

五、在scala中函数是一等公民权限

相关文章
相关标签/搜索