Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux / Objective-C协议初识

Objective-C协议类似于Java中的接口或者C++中的纯虚类,只有接口部分而没有实现部分只定义了方法的声明部分而没有实现部分。关键字为@protocol,协议可以继承别的协议,协议可以有多个用逗号分隔<p1 ,p2>。协议中不能有成员变量。@protocol MyProtocol <NSObject>
-(void) read;
-(void)write;
@end</span>定义一个MyProtocol协议继承自NSObject协议,我们也可以使用预编译指令@required和@optional来指定方法是必须实现的还是可选的。一个类可以实现多个协议。我们再定义一个协议类Media.h#import <Foundation/Foundation.h>@protocol Media <NSObject>
-(void)playmusic;
-(void)playvideo;
@end定义一个Mobile类继承子这两个协议#import <Foundation/Foundation.h>
#import "MyProtocol.h"
#import "Media.h"
@interface Mobile : NSObject<Media, MyProtocol>
@end实现Mobile类#import "Mobile.h"@implementation Mobile
-(void)read{
    NSLog(@"read");
}
-(void)write{
    NSLog(@"write");
}
-(void)playmusic{
    NSLog(@"playmusic");
}
-(void)playvideo{
    NSLog(@"playvideo");
}
@endObjective-C中@property的所有属性详解 http://www.linuxidc.com/Linux/2014-03/97744.htmObjective-C 和 Core Foundation 对象相互转换的内存管理总结 http://www.linuxidc.com/Linux/2014-03/97626.htm使用 Objective-C 一年后我对它的看法 http://www.linuxidc.com/Linux/2013-12/94309.htm10个Objective-C基础面试题,iOS面试必备 http://www.linuxidc.com/Linux/2013-07/87393.htmObjective-C适用C数学函数 <math.h> http://www.linuxidc.com/Linux/2013-06/86215.htm好学的 Objective-C 高清PDF http://www.linuxidc.com/Linux/2014-09/106226.htm本文永久更新链接地址:http://www.linuxidc.com/Linux/2014-10/108578.htm