IOS开发之多态
2015-06-12 15:08
393 查看
一、概念
多态:不同的对象以自己的方式响应消息的能力叫做多态。
在ios开发中,每个类都有自己对应的名字空间,这使得多态成为可能,不同类中定义相同的名字并不会冲突,类的实例方法和类方法有如下特点:
1、类的实例变量也位于该类独有的名字空间
2、类中的方法也同样为约该类独有的名字空间,所以两个不同类可以实现相同的方法
方法作为对象的接口,对象收到消息的名字就会调用方法的名字,同样的消息发给不同的对象,导致的操作并不相同
二、多态的优点
多态的主要好处就是简化了接口,多态可以使类和类之间可以重用一些习惯性的命名。
注意:oc支持方法名的多态,但不支持参数和操作符的多态
三、多态的实现
在Objective-C 中多态是由方法选取器selector来实现的,选取器的特点:
1、所有同名的方法拥有相同的选取器
2、所有的选取器是不一样的
SEL和@selector:
选择器的类型是SEL,@selector 指示符用来饮用选择器,返回类型是SEL;
@selector() 通过方法名来得到选取器
NSSelectorFromString() 可以通过字符串来得到选取器
NSStringFromSelector()通过选取器来得到方法名
注:选取器确定的事方法名,而不是方法的实现。是多态性和动态绑定的基础
多态:不同的对象以自己的方式响应消息的能力叫做多态。
在ios开发中,每个类都有自己对应的名字空间,这使得多态成为可能,不同类中定义相同的名字并不会冲突,类的实例方法和类方法有如下特点:
1、类的实例变量也位于该类独有的名字空间
2、类中的方法也同样为约该类独有的名字空间,所以两个不同类可以实现相同的方法
方法作为对象的接口,对象收到消息的名字就会调用方法的名字,同样的消息发给不同的对象,导致的操作并不相同
二、多态的优点
多态的主要好处就是简化了接口,多态可以使类和类之间可以重用一些习惯性的命名。
注意:oc支持方法名的多态,但不支持参数和操作符的多态
三、多态的实现
在Objective-C 中多态是由方法选取器selector来实现的,选取器的特点:
1、所有同名的方法拥有相同的选取器
2、所有的选取器是不一样的
SEL和@selector:
选择器的类型是SEL,@selector 指示符用来饮用选择器,返回类型是SEL;
@selector() 通过方法名来得到选取器
NSSelectorFromString() 可以通过字符串来得到选取器
NSStringFromSelector()通过选取器来得到方法名
注:选取器确定的事方法名,而不是方法的实现。是多态性和动态绑定的基础
相关文章推荐
- ios启动界面和icon设置
- 高仿土豆视频iOS版
- IOS 2G 3G 4G WIFI
- WWDC2014之iOS使用动态库1
- WWDC2014之iOS使用动态库2
- 给IOS项目添加图标和启动页
- iOS,开发准备之申请证书 ---by吴帮雷
- IOS行货自动打包
- iOS复制内容到剪切版
- IOS开发基础知识碎片-导航
- 苹果开发者各地区联系电话
- iOS IBInspectable和IB_DESIGNABLE
- IOS响应式编程框架ReactiveCocoa(RAC)使用示例
- iOS定位操作,获取当前位置
- github优秀开源项目大全-iOS
- 获取iOS设备唯一标识
- iOS中的单例
- WWDC总结:开发者需要知道的iOS 9 SDK新特性
- IOS Quartz 各种绘制图形用法---实现画图片、写文字、画线、椭圆、矩形、棱形等
- ios动画 calyer-旋转,缩放,裁剪,阴影,平移等