类的扩展--类目--ios

person+money.h  这是类目类

#import "Person.h"
//这是扩展person类的接口类,独立一个文件
@interface Person (Money)
-(void) haveMoney;
@end

person+money.m 这是类目类

#import "Person+Money.h"
//这是扩展person类的实现类,独立一个文件
@implementation Person (Money)
-(void) haveMoney{
    NSLog(@"人人有钱");
}
@end

person.h

#import <Foundation/Foundation.h>
//这是原始类
@interface Person : NSObject
@property(nonatomic,copy) NSString *name;
@property(nonatomic,retain) NSNumber *age;
-(void) originTest;
@end

//这是原始类的扩展类,直接定义与原始类同一文件中
@interface Person (Creat)
+(id) personWithName:(NSString *) name;
@end

//这是原始类的扩展类,直接定义与原始类同一文件中
@interface Person (Test)
-(void) test;
@end

person.m

#import "Person.h"
//这是person类的实现类
@implementation Person:NSObject

-(id) init{
    self=[super init];
    NSLog(@"调用类自定义的init 方法");
    return self;
}

+(id) personWithName:(NSString *) name{
    Person *person=[[Person alloc] init];
    person.name=name;
    return person;
}
//这是person类的实现类,直接定义与原始类同一文件中
-(void) test{
    NSLog(@"这是类目定义的方法");
}

-(void) originTest{
  NSLog(@"这是原始类的方法");
}
-(void) haveMoney{
  NSLog(@"人人有钱");
}
@end

person_family.h  这是延展的类

#import "Person.h"

@interface Person ()
-(void) haveFamily;
@end

main.m

//类目扩展学习

Person *person=[Person personWithName:@"caictou"];

//这是原始类定义的方法

[person originTest];

//这是同一个文件的扩展类定义的方法

[person test];

//这是独立一个文件的扩展类定义的方法

[person haveMoney];

//这是对立一个文件的延展类定义的方法

[person haveFamily];

类的扩展--类目--ios,布布扣,bubuko.com

时间: 2024-10-13 12:23:20

类的扩展--类目--ios的相关文章

C#中的扩展类的理解

扩展类是一种静态的一种类的调用方法,通过实例化进行调用.利用this进行指正该类,有参数的时候直接在后面追加参数. //必须定义为公共的静态类 public static class Studentinfo{ //定义一个添加学生姓名的扩展方法 public static string AddStuname(this string stuname){ return studentname; } //添加多个参数的扩展方法 public static string AddStudentinfo(t

DRF框架之视图的扩展类简介

这里呢,我将为大家介绍一下DRF框架,为我们提供的试图扩展类的使用方法即作用. 在使用视图扩展类时,需要将mixins模块导入到view文件中. from rest_framework import mixins 并且,在使用视图扩展类时,必须结合GenericAPIView基类一起使用. 所谓,视图的扩展类,就是GenericAPIView的子类,他们继承自GenericAPIView类,并在此基础上封装了增删改查的功能函数. 模板代码: class BookInfoAPIView(mixin

ios开发总结:Utils常用方法等收集,添加扩展类,工具类方法,拥有很多方便快捷功能(不断更新中。。。)

BOBUtils 工具大全 本人github开源和收集功能地址:https://github.com/niexiaobo [对ios新手或者工作一年以内开发人员很有用处] 常用方法等收集.添加扩展类.工具类方法.请求方法封装(包括图片上传等)等等 拥有很多方便快捷功能 ^_^ 用法: 只需要导入BOBsKit.h 头文件就行 // #import "BOBsKit.h" 依赖三方库: pod 'SDWebImage', '~> 3.7.5' pod 'MBProgressHUD'

iOS OC07.2_类的扩展

类目 //1.系统已经写好的类目:按照功能对系统的类方法进行区分 //[email protected]开始,后面是当前类的名字,类名后面是分类的功能,到@end结束 //2.我们创建的类目,一般是为了把系统的类进行功能扩充 // NSString *[email protected]"2015-07-12 10:00:00"; // NSString *[email protected]"2015-07-12 09:00:00"; //// [str sayHi]

[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开发类的扩展

类扩展常见方法:定义子类.遵循协议.使用分类.源文件拓展. 源文件拓展:语法:在声明@implementation前添加 @interface 类名() .... @end 分类Category 向现有类中添加方法时添加子类不方便 分类是对现有类的扩展,分类只扩展方法,不扩展属性 协议Protoccol 可以用来声明一大堆方法 只要某个类遵循了这个协议,就相当于拥有了这个协议中的所有方法声明

类的扩展(Extension , NSData, NSDateFormatter, Category, Extension, Protocol, delegate)

类的扩展         OC数据类型         1.NSInteger, NSUInteger         2.CGFloat         3.NSString, NSMutableString         4.NSArray, NSMutableString         5.NSNumber         6.NSDictionary, NSMutableDictionary         7.NSSet, NSMutableSet              NSD

OC学习-类的扩展

类目-Category 作用:主要为没有源代码的类添加方法(比如系统的类) 定义Category 新建文件 选择OC Category模板 填写类和分类名 在.h中添加方法声明 在.m中添加方法实现 声明Category NSString+StringMethod.h @interface NSString (StringMethod) - (void)sayHi; @end NSString+StringMethod.m @implementation NSString (StringMeth