KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I want to call a method of super class of a super class, without breaking the inheritance chain. Something like this: +(id) alloc { return [super.super alloc]; } Is there a way to achieve this ? Do not confuse with behavior offering by superclass method, discussed here . UPD: A few words about super and superclass differences. Lets say, we have AClass and SuperAClass . As follows from their names AClass inherits SuperAClass . Each of them has an implementation of a method -(void) foo; AClass implements one of the following class methods: 1. superclass: +(id) alloc { return [[self superclass] alloc]; } 2. super: +(id) alloc { return [super alloc]; } Now, suppose these 2 lines of code: AClass *AClassInstance = [AClass alloc]; [AClassInstance foo]; In first case (using superclass), SuperAClass 's foo method will be called. For the second case (using super), AClass 's foo method will be called.
Tags (comma-separated)
Save Edits
Cancel