博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Ios开发之协议protocol
阅读量:5849 次
发布时间:2019-06-19

本文共 756 字,大约阅读时间需要 2 分钟。

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

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

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

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

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

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

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

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

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

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

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

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

 

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

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

你可能感兴趣的文章
Unity3D修改LWRP,HDRP的几项小问题及解决
查看>>
基于SOUI开发一个简单的小工具
查看>>
编译器二次开发定制服务?
查看>>
Zent - 源自有赞微商城的 React 组件库
查看>>
深究盒模型的margin合并问题
查看>>
微信小程序教学第三章第三节(含视频):小程序中级实战教程:视图与数据关联...
查看>>
站在JAVA数据结构的视角看待简单表结构
查看>>
Sublime Text 3安装和插件安装,你知道多少呢?
查看>>
图解LVS工作模式
查看>>
IOING在开发SPA大型应用时有哪些必要的技术条件?
查看>>
记录一下mongoDB的使用
查看>>
七种实现左侧固定,右侧自适应两栏布局的方法
查看>>
JS中 === 和 == 的区别
查看>>
JCTools简介
查看>>
使用三元表达式实现(时,分,秒)前的时间差计算
查看>>
CSS3——过渡(transition)
查看>>
twitter-LDA研究
查看>>
ios上-webkit-overflow-scrolling与position的bug
查看>>
电商购物网站 - 购物车结算
查看>>
用getBoundClientRect检测浏览器滚动到底部事件
查看>>