自己的句柄在OOP语言中被称为不同的东西。到目前为止我遇到的少数几个:
this
(例如Java,C#)Me
(例如VB,vba)self
(例如Python)任何人都知道其他人吗?
答案 0 :(得分:3)
在Python中,第0个参数被称为self
只是一种惯例。重要的是这个职位。任何事都可以,所以你可以使用i
或其他任何东西:
class Foo:
def bar ( i ):
print i
答案 1 :(得分:1)
寻找自我......
大多数情况下,它根本没什么。例如,如果不存在本地x变量,通常“x”将引用this.x。
答案 2 :(得分:1)
在Perl中,对自身的引用从不隐含。
sub work {
my($self) = @_;
sleep(); # Don't do this
$self->sleep(); # Correct usage
}
来源:“Writing serious Perl - The absolute minimum you need to know”
答案 3 :(得分:1)
在Common-Lisp(CLOS),Dylan或Slate等多调度OO语言中,没有单一的接收者对象,因此没有self
的概念。
答案 4 :(得分:0)
Smalltalk也使用self。
答案 5 :(得分:0)
F#类似于Python和Perl,因为你只提供自己的名字。这是@Pete Kirkham在F#中的Python示例:
type Foo =
member i.bar = printfn "%O" i
像这样使用它:
let x = new Foo()
x.bar