OC第九节 类的扩展

1、Category  类目

  ①. 类目是为系统内部的类或者是没有源代码的类添加方法,不能添加实例变量

  ②添加的方法会被称为原类的一部分,子类照样可以使用

  ③. 类目的文件名为 原名 + 文件名 (例如:NSString+Wuyaun)

  ④. 既可以添加实例方法,也可以添加类方法

2、extension  延展

  ①. 延展是为自定义的类扩展功能的

  ②在的.m文件上方,使用@interface关键字构建扩展

  ③. 在延展中,我们既可以声明方法,也可以声明实例变量或者属性

  ④. 添加的内容属于本类的私有部分。

3、delegate  协议,代理执行。

  @class A;  // 告诉编译器A只是一个类名,至于类里面有什么实例变量,属性,方法都不知道

4、多态的应用

  // 多态,就是多种形态,有多态肯定有继承

    // 多态的本质是父类指针指向子类对象

    // 多态使用时,系统会动态监测指针指向的时什么类型,虽然,carCar *类型的指针,但是当car单独执行方法时,其实TABenz对象

  // 父类指针作为函数或者是方法的参数时,执行方法或者调用函数时,传入具体的子类对象,就可以执行之类的方法。

  // 多态的劣势,父类指针必能执行子类中都有的方法,只能执行继承的方法,如果想使用,必须做强转。

 

posted @ 2016-02-24 16:40  衡于虑hyl  阅读(96)  评论(0编辑  收藏  举报