iOS类目、延展和协议

来源:互联网 发布:清除mac上的个人信息 编辑:程序博客网 时间:2024/05/21 17:27

类目

为已知的类添加新的方法。(已知类包括自己定义的类和系统已有的类)

类目的目的

1.将类的实现分散到多个不同的文件中

• 将多个类目的声明放入同一个.h文件中

• 将实现法纳入多个.m文件中。

2.使用类目创建对私有方法的引用

• 就是为类创建私有方法。

3.给对象添加非正式协议

• 现在逐渐被找你个事协议替代。

4.向对象添加非正式协议。

延展

在自己类的实现文件中添加类目来声明私有方法。

协议

标准,定义了应该实现什么,但不关心具体如何实现。

OC中的协议是由@protocol声明的一组方法列表,要求其他的类去实现。(相当于@interface部分的声明。)

@required标注的方法为必须实现的方法。

@optional标注的方法为可以选择实现的。

类目的局限性

• 类目无法想已有的类中添加实例变量。

• 如果类目中的方法和已有类中的方法名称冲突时。

• 最好的办法是将自己扩展的方法和原始方法区分开。

类的私有方法

• Objective-C中没有绝对意义上的私有方法。

• .h文件中声明的方法都属于公开的方法,相当于开放给别人调用。

• 不想公开的方法,不在.h文件中申明就可以了。

• 如果在类之外调用未公开的方法,会有错误警报。

协议可以当做变,参数类型的限定。

演示demo下载地址 点击打开链接


0 0
原创粉丝点击