首页 > 代码库 > 类的扩展--类目--ios
类的扩展--类目--ios
person+money.h 这是类目类
#import "Person.h"//这是扩展person类的接口类,独立一个文件@interface Person (Money)-(void) haveMoney;@end
person+money.m 这是类目类
#import "Person+Money.h"//这是扩展person类的实现类,独立一个文件@implementation Person (Money)-(void) haveMoney{ NSLog(@"人人有钱");}@end
person.h
#import <Foundation/Foundation.h>//这是原始类@interface Person : NSObject@property(nonatomic,copy) NSString *name;@property(nonatomic,retain) NSNumber *age;-(void) originTest;@end//这是原始类的扩展类,直接定义与原始类同一文件中@interface Person (Creat)+(id) personWithName:(NSString *) name;@end//这是原始类的扩展类,直接定义与原始类同一文件中@interface Person (Test)-(void) test;@end
person.m
#import "Person.h"//这是person类的实现类@implementation Person:NSObject-(id) init{ self=[super init]; NSLog(@"调用类自定义的init 方法"); return self;}+(id) personWithName:(NSString *) name{ Person *person=[[Person alloc] init]; person.name=name; return person;}//这是person类的实现类,直接定义与原始类同一文件中-(void) test{ NSLog(@"这是类目定义的方法");}-(void) originTest{ NSLog(@"这是原始类的方法");}-(void) haveMoney{ NSLog(@"人人有钱");}@end
person_family.h 这是延展的类
#import "Person.h"@interface Person ()-(void) haveFamily;@end
main.m
//类目扩展学习
Person *person=[Person personWithName:@"caictou"];
//这是原始类定义的方法
[person originTest];
//这是同一个文件的扩展类定义的方法
[person test];
//这是独立一个文件的扩展类定义的方法
[person haveMoney];
//这是对立一个文件的延展类定义的方法
[person haveFamily];
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。