摘要: 对于编译器来讲,super仅仅是一个简单的标志来告诉编译器从什么地方开始搜索方法并执行;它只是用来作为一个消息的接收器。但是self实际上是一个变量,可以有多种用途,甚至可以给它赋值。self被越来越多的使用在类方法的定义中。类方法通常和类的实例联系在一起,而不是对象。举例来说,在许多类方法中,会为一个实例分配内存并进行初始化,并同时赋值给一个变量。然后也许会试图通过向新创建的实例发送一个消息并且调用实例自己。但是往往这样子是一个错误的做法。self和super都指向接受消息并执行某个方法的对象。在实例方法里,self代表这个实例自己,但是在类的方法定义中,self则代表一个对象。下面的例子是 阅读全文
posted @ 2011-03-16 17:36 iEarth 阅读(265) 评论(0) 推荐(0) 编辑