首页 > 移动平台 > 详细

iOS (catagroy)类别

时间:2014-11-26 14:09:11      阅读:637      评论:0      收藏:0      [点我收藏+]

1:可以为类添加新的方法,但不能添加实例变量。

2:第一,无法向类中添加新的实例变量。类别没有位置容纳实例变量。

第二,名称冲突,即类别中的方法与现有的方法重名。当发生名称冲突时,类别具有更高的优先级。你的类别方法将完全取代初始方法,从而无法再使用初始方法。有些编程人员在自己的类别方法名中增加一个前缀,以确保不发生名称冲突

 

 

#import <Foundation/Foundation.h>

 

@interface NSString (NumberConience)

-(NSNumber *)lengethNumber;

@end

 

#import "NSString+NumberConience.h"

 

@implementation NSString (NumberConience)

-(NSNumber *)lengethNumber

{

    NSUInteger length=[self length];

    return [NSNumber numberWithUnsignedInteger:length];

    

}

@end

 

   

    NSMutableDictionary *dict=[NSMutableDictionary dictionary];

     [dict setObject:[@"hello" lengethNumber] forKey:@"hello"];

     [dict setObject:[@"I like Finsh" lengethNumber] forKey:@"fish"];

     [dict setObject:[@"once upon a time" lengethNumber] forKey:@"time"];

 

iOS (catagroy)类别

原文:http://www.cnblogs.com/thbbsky/p/4122794.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!