美文网首页
类别与扩展笔记(极客班)

类别与扩展笔记(极客班)

作者: SkyFang2016 | 来源:发表于2016-10-16 01:49 被阅读0次

类别支持在没有源代码的情况下,基于某些特定的场合,为一个类增加功能;

可以添加

1,类方法

2,实例方法

3,重写基类方法

不能添加

1,属性

2,实例变量

3,已经存在的同名方法

命名规范

1,文件名:类名+扩展方法,如:NSString+Drawing.h/.m

使用方法:@interface NSString(Drawing)

/********

使用类别

使用场景:

1,适合在没有源代码的情况下,向已经封装的类中添加方法;

2,为一个类在某些特殊场景下增加功能;

3,对于复杂的大型文件分割实现;

添加类别

1,自己创建的类

2,系统的库

3,第三方库

/**********

扩展Extension

扩展支持在编译时、有类的源代码的前提下,向类添加功能。可以将扩张看做匿名的类别;

接口定义在.m 文件中@implementation前声明,实现代码仍然在@implementation内实现

扩展支持添加以下成员

1,属性

2,实例成员

3,类方法

4,实例方法

5,改写属性的读写属性

扩展注意:

扩展实现的成员都只能在.m  实现文件内部访问,在类外不可以直接访问;

扩展的主要用途在于信息隐藏,隐藏一些外部无需访问、而内部实现有需要使用的属性、方法:

1,类的主接口重要用于“对类外公开”的接口

2,类的扩展接口用于“对类内可见”的接口

相关文章

  • 类别与扩展笔记(极客班)

    类别支持在没有源代码的情况下,基于某些特定的场合,为一个类增加功能; 可以添加 1,类方法 2,实例方法 3,重写...

  • 【极客班】类别和扩展

    重点掌握:1.类别的作用:在没有源代码的情况下,为一个类增加功能。2.不可以添加实例变量(包括属性的实例变量),等...

  • 类别(Category)与类扩展 (Extension)的区别

    类别(Category)与类扩展 (Extension)的区别 iOS 类别和扩展(Categories和Exte...

  • 继承笔记(极客班)

    继承主要,继承实例变量,属性,类方法,实例方法; 所有的类的基类都是NSObject; 类的浅复制只是创建一个新的...

  • 多态笔记(极客班)

    和C++相比,oc不支持,在同一个类中,同名方法的重载,oc的多态是反应在继承上的; 尽量避免在父类init和de...

  • 协议笔记(极客班)

    协议:类型的合同约定,只描述外部接口,不提供具体实现; 协议可以包含以下成员; 1,属性; 2,实例方法; 3,类...

  • 数组笔记(极客班)

    NSArray有三种方法初始化: 1,工厂方法:arrayWithObjects,加nil结束; 2,初始化器方式...

  • 方法笔记(极客班)

    oc是采用消息分发机制来调用方法(注意消息的截取,特别是后面多页面手势消息的分发); 第一个参数名约定放在方法名里...

  • IOS学习笔记之类别与扩展

    1. 类别 (1)为已有的类添加新的方法 (2)可以在类别中添加新属性,但是不能为类别添加新的实例变量。 (3)缺...

  • iOS开发 -- 开发应用的步骤

    这是我个人的学习笔记 , 如有不同见解欢迎评论交流 . ( GeekBand-极客班 http://geekban...

网友评论

      本文标题:类别与扩展笔记(极客班)

      本文链接:https://www.haomeiwen.com/subject/jjpoyttx.html