Object-C 协议@protocol
来源:互联网 发布:mac 不生成 ds store 编辑:程序博客网 时间:2024/05/01 09:04
单继承还是多继承
网上搜索的资料大部分都说Object-C是单继承。语法上确实如此。然而,协议@protocol编译指令的引入,却使得Object-C的单继承不再那么纯粹。
协议声明和使用
@protocol ProtocolNamemethod1;method2;method3;...@end//例如@protocol MyPot- (void) fun;@end//使用协议,需要在类继承时在父类后用<>将协议名括起来@interface MyClass : NSObject<MyPot>-(void)fun //实现协议方法{}@end
从示例来看,@protocol编译指令和C++的纯虚函数是类似的,和.net c++和c#中的接口(interface)语法是类似的,据说和java中的接口也是类似的
示例中,MyClass实际上继承了NSObject和MyPot,不再是纯粹的单继承了。
协议的继承或协议的遵从
@protocol Protocol_A@end//协议B继承协议A,或者协议B遵从协议A@protocol Protocol_B <Protocol_A>@end
函数重名问题
同时继承多个协议时,示例
@protocol A-(void) fun;@end@protocol B-(int) fun;@end@interface Test : NSObject<A,B>@end@implementation Test这里是实现协议A的fun ?- (void) fun{} 还是实现协议B的fun ?- (int) fun { return 0;}@end
0 0
- Object-C 协议 Protocol
- Object-C 协议 Protocol
- Object-C 协议protocol
- Object-C 协议@protocol
- 【Object-C】协议 @protocol
- object-c-协议-protocol
- object-c 正式协议 protocol
- object-c学习:协议 Protocol
- object-c学习:协议protocol
- Object-C中的协议Protocol
- object-c学习:协议protocol
- Object-C加强 Protocol协议
- object-c协议(protocol)
- Object-C之协议Protocol
- Object-C中的协议Protocol
- Object-C中的协议Protocol
- object-c中的协议@protocol/@required问题
- object-c的protocol(协议)
- CBO统计信息
- 一致性hash算法
- 贫血模型和充血模型
- oracle数据库导入导出命令!
- python实现局域网ip地址扫描
- Object-C 协议@protocol
- 增大view的有效区域
- GNU 汇编中的#define 等宏定义解释
- Android可穿戴联盟来袭,苹果还在“憋大招”!
- linux下svn命令使用大全
- APK 安装过程 及 原理 详解
- Eclipse 无法打断点问题-遇到带斜杠的断点图标
- Oracle 判断 并 手动收集 统计信息 脚本
- UISlider常用操作