码迷,mamicode.com
首页 > 其他好文 > 详细

Objective - C 之延展

时间:2016-08-22 20:04:41      阅读:118      评论:0      收藏:0      [点我收藏+]

标签:

延展:为已有的类新增私有方法,只能在本类中使用

一、创建过程:

技术分享技术分享技术分享

二、总结:

     1、延展只有.h文件,在其中写新方法的声明,在原本的类(Person)中写方法的实现;

     2、上述的方法其实很不安全,因为如果导入了延展的声明文件(Person_Log.h),在其他任何地方都可以调用,这就无法达到私有的效果

     3、针对上述问题,解决方法如下:

  •  在原本的Person.m文件中@implement之前加入@interface   @end ,并在这之间写方法的声明,达到私有的效果
  •  这样不仅可以添加私有方法,也可以添加私有成员变量和私有属性

        示例如下:

// 创建私有   ----》 延展
@interface Person()
{
    NSString *_birthday;    // 私有成员变量
}

@property (nonatomic,strong) NSString *code;  // 私有属性

- (void)compareAgeWithPerson:(Person *)per;   // 私有方法

@end

@implementation Person

- (void)compareAgeWithPerson:(Person *)per {
    
    NSLog(@"比较年龄");
}
@end

 

   

 

Objective - C 之延展

标签:

原文地址:http://www.cnblogs.com/ciciCassie/p/5796702.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!