Ios开发之协议protocol

本文通过模拟USB设备与电脑交互的示例,详细介绍了iOS开发中Protocol的使用方法。包括如何定义Protocol、@required与@optional的使用区别以及如何在具体类中实现这些Protocol。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  Protocol是ios开发中的一个难点也是一个重点,要想使用好,或者理解好它,可能需要时间的累积。今天我们就通过一个例子来简单的看一下,怎么样使用protocol。

  我们今天用的例子就是模拟电脑插入usb设备来剖析一下protocol的使用。

  我们首先来想一下,我们的usb设备和电脑的pci接口之间应该是需要遵从某种协议的,否则的我们的usb设备不可能在电脑上使用的!

  假如说我们模拟的usb协议是这样的USBProtocol

  这个协议规定通电是必须要实现的方法,可以通过@required来修饰我们声明的方法,这样一来,我们在类遵从了的时候就必须要实现,而用@optional来声明的方法,则是类遵从这个协议的时候选择实现的!

  有了这个协议我们来模拟usb设备的生产,创建下面的两个类,一个是用USB接口的小风扇,一个就是我们的U盘。

这个是风扇类里面,风扇遵从的协议但是只实现了必须要实现的方法通电功能!

而Disk类,所有的方法都实现了。

接下来,我们开始创建我们的电脑类

我们通过给电脑类中添加一个实现USBProtocol协议的一个协议变量来模拟在电脑上设置一个usb接口,添加一个在usb设备插入后要实现的功能!

在main函数中模拟usb设备插入的状态

用set方法表示给usb接口插入数据,我们会发现在出入不同的设备并且运行的时候,调用的方法,会在不同的文件中实现!

 

作者:杰瑞教育
出处: http://www.cnblogs.com/jerehedu/ 
版权声明:本文版权归 杰瑞教育 技有限公司和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
技术咨询:JRedu技术交流
 

转载于:https://www.cnblogs.com/jerehedu/p/4935179.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值