7.ios-分类 继承 extention
2015-08-19 18:06
387 查看
Person.h
Person.m
Teacher.h
Teacher.m
Person+Category.h
Person+Category.m
Person_MyExtension.h
main.m
#import <Foundation/Foundation.h> @interface Person : NSObject -(void)eat; @end //2.第二种方法 //分类的声明 //创建分类@interface <#class name#> (<#category name#>) @interface Person (MyCategory) -(void)run; @end
Person.m
#import "Person.h" @implementation Person -(void)eat{ NSLog(@"%@:eat",[self class]); } @end //分类的实现 @implementation Person (MyCategory) -(void)run{ NSLog(@"%@:run",[self class]); } @end
Teacher.h
#import "Person.h" @interface Teacher : Person -(void)study; @end
Teacher.m
#import "Teacher.h" @implementation Teacher -(void)study{ NSLog(@"%@ :study",[self class]); } //重写父类方法 -(void)eat{ [super eat];//保存父类方法 NSLog(@"teacher not eat"); } @end
Person+Category.h
#import "Person.h" //1.第一种方法 //系统文件创建分类 //创建分类@interface Person (Category分类名可省略) @interface Person (Category) -(void)play; @end
Person+Category.m
#import "Person+Category.h" @implementation Person (Category) -(void)play{ NSLog(@"%@ play",[self class]); } @end
Person_MyExtension.h
#import "Person.h" //与分类的区别 //@interface <#class name#> (<#category name#>) //@end @interface Person () @end
main.m
#import <Foundation/Foundation.h> #import "Person.h" #import "Teacher.h" #import "Person+Category.h" int main(int argc, const char * argv[]) { @autoreleasepool { Person*person=[[Person alloc]init]; [person eat]; [person play]; [person run]; Teacher*teacher=[[Teacher alloc]init]; [teacher eat]; [teacher study]; [teacher play]; [teacher run]; } return 0; }
相关文章推荐
- iOS力学动画——DynamicAnimate
- iOS 刷新tableview方法
- iOS获取设备唯一标识的各种方法?IDFA、IDFV、UDID分别是什么含义?
- IOS端cordova项目 报错:permisson denied
- Masonry入门教程
- iOS项目开发实战——使用用户首选项数据进行启动提示
- iOS常用的函数和常数
- 【原】iOS:手把手教你发布代码到CocoaPods(Trunk方式)
- IOS-笔记8(手势)
- iOS开发日记5-推送(信鸽推送)
- 使用Fragment和RadioGroup实现类似ios的tabbar的效果
- 一文让你彻底了解iOS字体相关知识
- iOS动画——DynamicAnimate
- 桌面支持--HP bios开启硬件虚拟化
- ios8适配遇到的问题及解决方法
- iOS中级(一) 正则表达式
- iOS项目开发实战——使用用户首选项数据API存储信息
- ios上获取是否安装了某个程序
- IOS AutoLayout 好的建议搜集
- LLDB, iOS调试器