2015-06-01 18 views

回答

2

this在Scala中很特别。首先,根据语言规范的lexical syntax部分,this是保留关键字。还看到,精确地限定this关键字的语义的规范的6.5 This and Super部分:

this可以出现在模板或 化合物类型的语句部分的表达。它表示由最内层 包含引用的模板或复合类型定义的对象。如果这是 复合类型,则this的类型是该复合类型。如果是简单名称为C的类或对象定义的 模板,则this的类型 与C.this的类型相同。

所以在你Any类的情况下,this是实际的对象平等的方法被要求提供参考。

2

this特殊的斯卡拉。它指的是发送消息的接收者(如果你更喜欢Smalltalk的命名法则)或者当前正在执行的方法被调用的对象(如果你更喜欢C++的命名法)。

它相当于在Smalltalk,自考,新话,红宝石,真想不到self关键字,在Object Pascal,Objective-C中,斯威夫特,和他们的亲属或用Java,C#,VB.NET,ECMAScript中,C的this关键字++ ,D,PHP,ECMAScript及其亲属或在Visual Basic中的Me关键字或Eiffel中的Current关键字。

相关问题