<pre name="code" class="objc">#import <Foundation/Foundation.h>
/*
super的作用
1.直接调用父类中的某个方法
2.super处在对象方法中,那么就会调用父类的对象方法
super处的类方法中,那么就会调用父类的类方法
3.使用场合:子类重写父类的方法时想保留父类的一些行为
*/
//人
@interface Person : NSObject
- (void) walk;
- (void) test;
+ (void) test;
@end
@implementation Person
- (void) walk
{
NSLog(@"走");
}
- (void) test
{
NSLog(@"Person-test");
}
+ (void) test
{
NSLog(@"Person+test");
}
@end
//学生
@interface Student : Person
+ (void)act;
- (void)act2;
@end
@implementation Student
+ (void)act
{
[super test];
}
- (void)act2
{
[super test];
}
- (void)walk
{
//蹦
NSLog(@"蹦");
//走 直接调动父类的walk方法
[super walk];
}
@end
int main (int argc, const char *argv[])
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
Student *s = [Student new];
[s act2];
[s walk];
[Student act];
[pool drain];
return 0;
}
objective-c super
最新推荐文章于 2021-05-28 17:32:21 发布