IOS 类别与扩展的区别 (category & extensions)

类别

.h

@interface NSString(XXXXXX)

-(NSInteger)getLen;

@end

.m

@implementation NSString(XXXXXX)

 -(NSInteger)getLen

{

  return 0;

}

@end

////////////////////////////////////////////////////////////////////////////////////////////////////

扩展

.h

@interface ClassA

{

  NSString * a;

}

-(void)Info;

@end

.m

@interface ClassA

{

  NSString * b;

}

-(void)GetName;

@end

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

类别是对已有的某个类添加新的方法。

扩展是多新创建的类添加 变量或者方法(就是在.m文件里面进行添加)

时间: 2024-10-25 21:20:55

IOS 类别与扩展的区别 (category & extensions)的相关文章

iOS - 类别和扩展(Categories和Extensions)

分类(Category) 分类能够做到的事情主要是:即使在你不知道一个类的源码情况下,向这个类添加扩展的方法. 此外,分类能够保证你的实现类和其他的文件区分开. 1 #import "UIViewController.h" 2 @interface UIViewController(CustomView) 3 -(void)extMethod: 4 @end 使用分类为类添加方法(Add Methods to Classes) 通过在interface中声明一个额外的方法并且在impl

ios 类别和扩展-赵小波

类别 @interface ClassName ( CategoryName ) // method declarations @end Category在iOS开发中使用非常频繁.尤其是在为系统类进行拓展的时候,我们可以不用继承系统类,直接给系统类添加方法,最大程度的体现了Objective-C的动态语言特性. 注意事项 1:类别是类的扩展,只可以声明方法,不可以声明变量.并且,类别的方法优先级较高,可覆盖原类方法. 2:类别的方法中,不可以调用super方法.--类别的局限 3:catego

iOS开发之类别、扩展

类别: 在ios项目开发中允许使用类别为现有的类添加新的方法,并不需要创建子类.通过类别我们可以动态地为现有的类添加新的方法,可以将类的定义模块化地布局到多个相关文件中. 使用类别的好处为: 一.进行模块化设计 二.利用类别来调用私有方法 接口部分格式如下: @interface 已有类 (类别名) //方法的定义 ..... @end 注意:类别中通常只定义新的方法. 类别的实现部分的语法格式如下: @implmentation 已有类(类别名) //方法的实现 @end 我先创建一个old类

iOS类别Category与扩展Extension

本文主要是详解iOS类别(Category)与扩展(Extension,匿名类别),请登陆疯狂软件教育官网.Category在iOS开发中使用非常频繁.尤其是在为系统类进行拓展的时候,我们可以不用继承系统类,直接给系统类添加方法,最大程度的体现了Objective-C的动态语言特性. [objc] view plaincopy在CODE上查看代码片派生到我的代码片 #import @interface NSObject (Category) - (void)myMethod; @end 这是一个

[ios]objective-c中Category类别(扩展类)专题总结

本文转载至 http://yul100887.blog.163.com/blog/static/20033613520126333344127/ objective-c类别的作用?通过类别的方式,可以将类的实现分散到不同的文件里. 类别类别是一种为现有的类添加新方法的方式.利用Objective-C的动态运行时分配机制,可以为现有的类添加新方法,这种为现有的类添加新方法的方式称为类别catagory,他可以为任何类添加新的方法,包括那些没有源代码的类.类别使得无需创建对象类的子类就能完成同样的工

ios 中Category类别(扩展类)专题总结

原创地址   http://www.code4blog.com/archives/294 类别 类别是一种为现有的类添加新方法的方式. 利用Objective-C的动态运行时分配机制,可以为现有的类添加新方法,这种为现有的类添加新方法的方式称为类别catagory,他可以为任何类添加新的方法,包括那些没有源代码的类. 类别使得无需创建对象类的子类就能完成同样的工作 一.创建类别 1.声明类别 声明类别与声明类的形式很相似 @interface  NSString(NumberConvenienc

iOS类别(Category)

iOS类别(Category)与扩展(Extension) 苹果的官方文档 Category在iOS开发中使用非常频繁.尤其是在为系统类进行拓展的时候,我们可以不用继承系统类,直接给系统类添加方法,最大程度的体现了Objective-C的动态语言特性. #import @interface NSObject (Category) - (void)myMethod; @end 这是一个最简单的Category,作用于NSObject类,给NSObject添加了一个方法. 使用Category需要注

objective-c中Category类别(扩展类)专题总结

objective-c中Category 类别.扩展 专题总结 http://blog.csdn.net/jiajiayouba/article/details/21105873 分类: IOS 2014-03-12 18:19 1293人阅读 评论(0) 收藏 举报 类别扩展 objective-c中Category类别(扩展类)专题总结 objective-c类别的作用? 通过类别的方式,可以将类的实现分散到不同的文件里. haoxue 2011-11-19 14:03 类别 类别是一种为现

IOS中 类扩展 xib

IOS中 类扩展 xib 一.类扩展(class extension,匿名分类) 1.格式 @interface 类名 () { // 成员变量... } // 方法声明... @end 2.作用 1> 写在.m文件中 2> 一般用来扩充私有成员变量.@property属性.方法等 二.随机数生成 1.arc4random() 会生成任意正整数和0 2.arc4random_uniform(100) 会生成0~99的整数(包括0和99) 三.UIView常见方法 1.addSubview:(U