zoukankan      html  css  js  c++  java
  • Objective-C中的Category(分类)

    Objective-C中的Category(分类)


    1 Category概念:动态的为已经存在的类加入新的行为(方法)


    2 Category(分类)创建的方法


    (1)通过Xcode生成分类

    (2)能够手动生成分类,在头文件中面生成2个@interface

    比如:

    在Student.h文件里
    @interface Student:NSObject
    -(void)test1;
    @end
    
    以下是Student的分类,test为分类的名称
    @interface Student(test)
    -(void)test2;
    @end
    
    在Student.m文件里
    @implementation Student
    -(void)test1
    {
    	NSLog(@“test1…”);
    }
    @end
    
    @implementation Student(test)
    -(void)test2
    {
    	NSLog(@“test2…”);
    }
    @end

    3 Category(分类)的说明


    (1)()代表着一个分类

    (2)()中的Test代表着分类的名称


    (3)分类仅仅能扩展方法,不能添加成员变量


    (4)使用Category对类进行扩展时不须要创建子类

    Category使用简单的方式,实现了类的相关方法的模块化,把不同的类方法分配到不同的分类文件里


    4 Category的使用场景

    (1)在定义类时的某些情况下(比如需求变更),你可能想要为当中的某个或几个类中加入新的方法

    (2)一个类中包括了很多不同种类的方法须要实现,而这些方法须要不同团队的成员来实现

    (3)在使用基础类库时,有可能希望这些类实现一些自己须要的方法,比方NSString+JSON.h,为NSString这个类拓展一些解析JSON的方法。




  • 相关阅读:
    hdu1078 记忆化搜索
    AC之路开始了~
    Balanced Lineup poj3264 线段树
    Billboard 题解 hdu2795
    Count Color poj2777 线段树
    D-query SPOJ 树状数组+离线
    Poj 3468 A Simple Problem with Integers 线段树
    最小生成树两大算法总结+模板
    最短路三大算法及其优化算法大总结+模板
    POJ-1502 MPI Maelstrom 迪杰斯特拉+题解
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/4470763.html
Copyright © 2011-2022 走看看