2012年3月25日 星期日

[Objective C] what is self and super?

Below just a learning note.....

在objective C中,可以對某個物件(instance, object)做出某個動作(方法,method),這個動作可以有輸入的Argument (mathematically speaking, an argument is an independent variable associated with a function and determining the value of the function, e.g. y=f(x) x is a argument here.)也可以有輸出的「值」(return)。


換句話說,接受這個method的object就是這個方法的receiver.


在定義對某個object的method時出現的self,就代表著接受這個method的object 本身(receiver)。


[self methodName];
就代表著對method receiver做某件事。


在定義對某個object的method時出現的super,"也"代表著接受這個method的object 本身(receiver),但這個super卻告訴complier 先從self的superclass父類別開始找尋methodName,而不是從self本身所在的類別裡開始找起。



[super methodName];
就代表著對method receiver做某件method receiver之父類別裡的動作method.

沒有留言:

張貼留言