13、OC —— Protocol

Protocol是什么?它是一份协议,上面有一些列协议的特权,只要你遵守了此协议,你便可以使用协议上面的特权了,从而让你跟别人不同。


比如你和大家都是QQ用户,QQ那有一份QQMumber(QQ会员)的协议,当你每个月交了10元(遵守了这份协议),你便是QQ会员了,协议上有许多特权供你使用,比如昵称变红,有VIP标志。


那我们要怎么制定一份协议呢,我们新建文件,定义一个QQMumberProtocol的协议:

192653_6Lfd_1444783.png


我们会发现只有一个.h文件,是的,协议里只能声明方法,不能声明成员变量。

192721_uSMf_1444783.png


之后我们如果要让QQUser(QQ用户)这个类成为QQMumber(QQ会员)的话,就要遵守这份协议,那要怎么遵守呢,当然是每个月交10元啦哈哈。

192751_2mWq_1444783.png


遵守之后你便会发现,Xcode便会报出警告,你没实现协议里的方法,这年头,包个会员还要主动让自己的昵称变红

192810_8xp7_1444783.png


是的,这些特权是必须实现的,也是默认的,当然,协议里也有让用户选择实现的特权,比如看下面的更换QQ秀(changeQQShow),我们会发现没实现changeQQShow方法,Xcode也不会发出警告

192832_I70B_1444783.png

192841_PlR6_1444783.png


最后我们实例化一个QQ用户,他已经遵守了QQ会员协议,于是他便可以调用这份协议里的特权。

192924_Cfu0_1444783.png




转载于:https://my.oschina.net/cobish/blog/356349

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值