Objective-C中通过分类来扩展现有类

Linux大全评论735 views阅读模式

在Objective-C中,我们可以以更简单的方法来扩展现有类以满足自己的需求。例如,我需要在NSString中添加一个show方法来输出一个log。

//
@interface NSString (Op)
-(void) show ;
@end

@implementation NSString (Op)

-(void) show
{
    NSLog(@" this is NSString show.") ;
}

@end

代码中的Op为分类名,分类名位于圆括号当中,也可以不使用分类名,例如 @interface NSString () 。我们在该分类中添加了show函数,然后在@implementation中实现了该函数,这样我们就扩展了NSString,而不需要使用继承。使用如下 :

        NSString* str = [[NSString alloc] init] ;
        [str show] ;

Objective-C中@property的所有属性详解 http://www.linuxidc.com/Linux/2014-03/97744.htm

Objective-C 和 Core Foundation 对象相互转换的内存管理总结 http://www.linuxidc.com/Linux/2014-03/97626.htm

使用 Objective-C 一年后我对它的看法 http://www.linuxidc.com/Linux/2013-12/94309.htm

10个Objective-C基础面试题,iOS面试必备 http://www.linuxidc.com/Linux/2013-07/87393.htm

企鹅博客
  • 本文由 发表于 2019年12月10日 17:04:24
  • 转载请务必保留本文链接:https://www.qieseo.com/180298.html

发表评论