在scala中, this是一个关键字, 用于引用当前对象。你可以使用this关键字来调用实例变量, 方法, 构造函数。
Scala这个例子
在以下示例中, 这用于调用实例变量和主构造器。
class ThisExample{
var id:Int = 0
var name: String = ""
def this(id:Int, name:String){
this()
this.id = id
this.name = name
}
def show(){
println(id+" "+name)
}
}
object MainObject{
def main(args:Array[String]){
var t = new ThisExample(101, "Martin")
t.show()
}
}
输出
101 Martin
使用this关键字的Scala构造函数调用
在以下示例中, this方法用于调用构造函数。它说明了如何从其他构造函数调用构造函数。你必须确保this必须是构造函数中的第一条语句, 同时调用其他构造函数, 否则编译器将引发错误。
class Student(name:String){
def this(name:String, age:Int){
this(name)
println(name+" "+age)
}
}
object MainObject{
def main(args:Array[String]){
var s = new Student("Rama", 100)
}
}
输出
Rama 100