zoukankan      html  css  js  c++  java
  • ObjectiveC category

    类别:category

    类别:为现有的类添加新方法的方式。

    创建(.h文件):

    @interface NSString (NumberConvenience)

    - (NSNumber *) lengthAsNumber; //需要添加的方法

    @end //NumberConvenience

    实现(.m文件):

    @implementation NSString (NumberConvenience)

    - (NSNumber *) lengthAsNumber

    {

    //函数体

    }

    @end //NumberConvenience

    局限性:

    1 无法添加实例变量;

    2 名称冲突。

    作用:

    1 利用类别进行分散实现;把一个类实现为多个不同的类别,在类别(逻辑分组)中将方法组织起来。

    2 使用类别创建向前引用;

    3 非正式协议&委托&类别:被发送给委托对象的方法可以声明为一个NSObject的类别。某个类让委托对象执行该类自己的某些操作。

    非正式协议:创建一个NSObect的类别称为”创建一个非正式协议“;

    委托:一种对象,另一个类的对象会要求委托对象执行它的某些操作。

    如何知道委托对象能否处理发送给他的响应消息?

    首先检查对象,询问能否响应该选择器,如果该对象能够响应该选择器,则给它发送消息。

    @selector(// 函数方法名)

  • 相关阅读:
    数据结构之双向链表的插入
    循环链表之约瑟夫 环
    循环链表
    顺序表的A-A交B
    环境变量
    java之构造函数的简单应用
    java之覆盖
    数据结构之栈的进制转换(10进制-- > 8进制 )
    数据结构链表之 一元多次多项式
    排序之简单的快速排序
  • 原文地址:https://www.cnblogs.com/kimimaro/p/2047722.html
Copyright © 2011-2022 走看看