asl*_*nci 2 inheritance message objective-c self
我有两个Objective-C类,一个派生自另一个
@interface DerivedClass : BaseClass
{
}
Run Code Online (Sandbox Code Playgroud)
下面的代码部分属于BaseClass:
- (id)init {
if (self = [super init]) {
[self configure];
}
return self;
}
- (void) configure{} //this is an empty method
Run Code Online (Sandbox Code Playgroud)
代码部分属于DerivedClass:
-(void) configure{
NSLog(@"derived configure called");
}
Run Code Online (Sandbox Code Playgroud)
现在,当我说derivedInstance = [DerivedClass new];并观察调用堆栈时,我看到configure派生类[self configure]的init方法在base 方法的行中被调用.
我是一个Objective-C菜鸟,我对如何从基类的方法调用派生类的方法感到困惑." self"关键字被解释为this与某些语言的" "关键字相同,但我认为这种解释并不完全正确,对吧?
[self someMessage]将消息"someMessage"发送到当前对象,这是一个实例DerivedClass.
信息分配在运行时动态进行的,所以它会表现为无论对象是在那个时候.
| 归档时间: |
|
| 查看次数: |
525 次 |
| 最近记录: |