黑马程序员_iOS_OC_分类

原创 2015年11月19日 14:17:32

 ——- android培训java培训、期待与您交流! ———-

1.分类的概念以及使用流程
2.分类的声明和实现


/*
 分类:
    一些方法的声明和实现
 作用:在不修改类的源代码的前提下,给类添加新的功能
 使用步骤:
    1)声明一个类
    格式:@interface 类名(分类名称)
         @end
         Person+base -->分类文件的命名规则
    如:
         //一个类
         @interface Person:NSObejct
         @end

         //分类
         @interface Person(base)
         -(void) run;
         @end
    2)实现这个分类
    格式:@implementation 类名(分类名称)
         @end
    如:
         //Person+base 类别实现
         @implementation Person(base)
         -(void) run{}
         @end
    3)使用分类中的方法
    和使用类中原有的对象一样
    Person *p = [Person new]
    [p run];


 */

#import <Foundation/Foundation.h>
#import "Person+base.h"//一定要导入分类文件
int main(int argc, const char * argv[]) {
    @autoreleasepool {
        Person *person = [Person new];
        [person run];

    }
    return 0;
}

3.分类的使用注意事项

/*
 分类使用注意:
 1)分类只能增加方法,不能够增加成员变量
 2)可以访问原来类的成员变量
 3)出现同名方法,优先调用分类中的 
 4)在多个类别有同名方法的时候,这时候,执行的最后编译那个类别的同名方法
 */

4.分类的非正式协议

/*
所谓的非正式协议就是类别,即凡是NSObject或其子类Foundation框架中的类增加的类别,都是非正式协议。
*/

5.分类延展

/*
 延展类别又称为扩展(Extendsion)
 Extendsion是Category的一个特列
 其名字为匿名(为空),并且新添加的方法一定要予以实现。(Category没有这个限制)
 所谓的扩展,其实就是为一个类添加额外的原来没有的变量、方法或者合成属性。
 */

黑马程序员_iOS_OC_协议

——- android培训、java培训、期待与您交流! ———-1.
  • g363226848
  • g363226848
  • 2015年11月19日 14:18
  • 68

黑马程序员_iOS_OC_内存管理

——- android培训、java培训、期待与您交流! ———- 1.
  • g363226848
  • g363226848
  • 2015年11月19日 14:16
  • 62

黑马程序员_iOS_OC_创建对象并调用函数

Student.h#import @interface Student : NSObject { //成员变量 学号 NSUInteger _no; //年龄 N...
  • xuchunwei1027
  • xuchunwei1027
  • 2015年11月24日 10:01
  • 128

黑马程序员骗局

最近看到网上的一篇帖子:“传智播客旗下黑马程序员就业骗局,企业封杀遇到了骗子培训” 。    黑马程序员面对诋毁,诽谤,真的想置之不理,让谣言自生自灭。看看那篇帖子的发布时间大概在2013年或者2...
  • itcast_cn
  • itcast_cn
  • 2016年09月05日 15:22
  • 3348

黑马程序员--Spring框架方方面面之…

--------
  • li951418089
  • li951418089
  • 2015年12月24日 10:25
  • 613

黑马程序员--Oracle学习_day06

----------  android培训 、java培训、期待与您交流! ---------- 学习目标:1,理解oracle的pl/sql的概念   2,掌握pl/sql编程技术(...
  • xpaibeyond
  • xpaibeyond
  • 2015年01月16日 14:28
  • 220

黑马程序员_iOS_OC_继承_方法重写与覆盖

Son.h#import //导入父类的头文件 #import "Father.h" @interface Son : Father @property() char *sonName; @end ...
  • xuchunwei1027
  • xuchunwei1027
  • 2015年11月24日 10:25
  • 136

黑马程序员—马上快毕业了,给你们点建议吧

文章来源:黑马程序员,黑马论坛 首先就是基础重要不重要,这个不好做定论,因为看你需要掌握的程度,黑马这边的课程需要基础在视频里都有,老毕的25天和张老师的高新技术,这些全部会用到,把这些全看熟了,并...
  • heima_28
  • heima_28
  • 2014年08月26日 15:13
  • 712

黑马程序员——网络爬虫

------- android培训、java培训、期待与您交流! ----------
  • yonggandeyangguang
  • yonggandeyangguang
  • 2014年09月24日 12:14
  • 254

黑马程序员:Hibernate基础知识

android培训、java培训
  • u012159707
  • u012159707
  • 2013年09月26日 15:42
  • 610
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:黑马程序员_iOS_OC_分类
举报原因:
原因补充:

(最多只允许输入30个字)