Category
2015-07-10 13:36
639 查看
更新的第一篇技术博客,希望以后坚持下去。
function:实现类相关方法的模块化,把不同的方法实现到不同的分类文件中
imp:不能添加成员变量;
在写分类的时候,不一定要创建新文件,可以写在原来的文件中;
code:
对NSString进行的扩展示例:
#import <Foundation/Foundation.h>
@interface NSString (JSON)
+ (NSString *)json;
@end
#import "NSString+JSON.h"
@implementation NSString (JSON)
+(NSString *)json{
return
@"{'id':10,'name':'mj'}";
}
@end
对自己创建的类Student进行扩展
h文件:
#import <Foundation/Foundation.h>
@interface Student :
NSObject
- (void)test;
@end
//类和分类还可以写在同一个文件中
@interface Student (ADDition)
- (void)testthree;
@end
m文件:
#import "Student.h"
@implementation Student
- (void)test{
NSLog(@"调用了test的方法");
}
@end
@implementation Student (ADDition)
- (void)testthree{
NSLog(@"test 3");
}
@end
分类的使用:
//important分类中只能添加方法,不能添加成员变量。
//不改变与原来的模块,我们可以无限的扩展方法
//方便团队合作,在多人同时开发时候,对于一个类分成好多个模块,大家不会相互影响
//增加新的需求,增加新的方法。
Student *stu = [[Student
alloc] init];
[stu
test];
[stu
testTwo];
NSLog(@"%@",[NSString
json]);
[stu
testthree];
1.分类,类别:
definition:动态的为已经存在的类添加新的方法function:实现类相关方法的模块化,把不同的方法实现到不同的分类文件中
imp:不能添加成员变量;
在写分类的时候,不一定要创建新文件,可以写在原来的文件中;
code:
对NSString进行的扩展示例:
#import <Foundation/Foundation.h>
@interface NSString (JSON)
+ (NSString *)json;
@end
#import "NSString+JSON.h"
@implementation NSString (JSON)
+(NSString *)json{
return
@"{'id':10,'name':'mj'}";
}
@end
对自己创建的类Student进行扩展
h文件:
#import <Foundation/Foundation.h>
@interface Student :
NSObject
- (void)test;
@end
//类和分类还可以写在同一个文件中
@interface Student (ADDition)
- (void)testthree;
@end
m文件:
#import "Student.h"
@implementation Student
- (void)test{
NSLog(@"调用了test的方法");
}
@end
@implementation Student (ADDition)
- (void)testthree{
NSLog(@"test 3");
}
@end
分类的使用:
//important分类中只能添加方法,不能添加成员变量。
//不改变与原来的模块,我们可以无限的扩展方法
//方便团队合作,在多人同时开发时候,对于一个类分成好多个模块,大家不会相互影响
//增加新的需求,增加新的方法。
Student *stu = [[Student
alloc] init];
[stu
test];
[stu
testTwo];
NSLog(@"%@",[NSString
json]);
[stu
testthree];
相关文章推荐
- 关于Go语言,自定义结构体标签的一个妙用.
- 关于csv数据如何导入mongo的historicialQuotes的命令导入方式
- go 语言学习笔计之结构体
- Category
- google guava使用例子/示范(一)
- 算法基础:排列组合问题-全排列(Golang实现)
- Codeforces Round #287 (Div. 2) E. Breaking Good 最短路
- 首次使用Google Analytics
- [转载] google mock cookbook
- [转载] google mock CheatSheet
- [转载] what's goole mock
- Google的算法出过哪些囧事?
- 游走于Google圈造富的那帮人
- VIEWGOOD(远古)大型企业之信息发布平台项目
- Django: You don't have permission to edit anything
- Algorithm --> Dijkstra和Floyd最短路径算法
- Algorithms—73.Set Matrix Zeroes
- 应用Django构建工作流管理模块(一)
- heroku部署django之静态文件配置
- Algorithms—67.Add Binary