1, 扩展
#import <UIKit/UIKit.h>
@interface ClassA : UIView
-(void)printA;
@end
@interface ClassA () { //此处为扩展
int oneData;
}
-(void)printD;
@end
#import "ClassA.h"
@implementation ClassA
-(void)printA{
NSLog(@" PrintA ");
}
-(void)printD{
NSLog(@" PrintD %d ",oneData);
}
2, 分类
通过Object -C category 创建一个类ClassB category on ClassA
会生成ClassA+ClassB.h 和.m 文件
#import "ClassA.h"
@interface ClassA (ClassB)
-(void)printA; //如果在classB中实现与classA中相同名字的方法会提示警告
-(void)printB;
#import "ClassA+ClassB.h"
@implementation ClassA (ClassB)
-(void)printA{
NSLog(@" classB PrintA ");
}
-(void)printB{
NSLog(@" PrintB ");
}
@end
本文深入探讨了Objective-C编程中类的扩展和分类的概念。通过实例展示了如何使用扩展来添加类的功能,以及如何在类上创建分类来重用代码。详细解释了实例中的代码实现,并提供了创建类分类的具体步骤。
644

被折叠的 条评论
为什么被折叠?



