突然间就想起你这个问题了,OC中有私有方法。
具体如何实现,这就是category范畴内的。
按照李明杰说的就是分类,其实不新创建一个分类也可以实现分类。
其实应该叫做类别,很多书都这么说。类别在原类的基础上可以实现对类的扩充。
类别分有名类别和匿名类别,有名类别为原类扩充方法,匿名类别则可以为类扩充成员变量和方法。
具体实现:
在任意一个类的.m文件中
@interface Student() <--------括号中无内容为匿名类别,只能扩充私有方法和成员变量,供类内使用。
//{
// //扩展了一个成员变量
// double _score;
//}
@property (nonatomic,assign) double score;
//扩展一个类方法
+(Student *)createStudent;
//扩展一个对象方法
-(void)showNoAndAgeAndScore;
@end
@implementation Student
//显示学生学号和姓名
-(void)showNoAndAge
{
[Student createStudent];
self.score = 1000;
self.no = 10;
NSLog(@"学号:%lu 年龄:%lu",_no,_age);
//这样访问是可以的,因为是私有的方法
[self showNoAndAgeAndScore];
}
|