协议

作者: nadou23 | 来源:发表于2020-03-22 21:28 被阅读0次

1.协议总是以var关键字来声明变量属性。声明后面跟了{get set} 就表示可读可写,只跟来{get} 就表示可读的。
2.1不支持为方法中的参数提供默认值
2.2 当为类提供构造方法时,实现的类必须在方法前加上 required关键字,而且对于这个类的子类,如果重写类这个构造方法,还得加上override
2.3 协议可以作为类型,好比oc里面的id<protocol> delegate
3.通过扩展遵循协议,如果类型已经实现完全实现协议的方法,但没有声明遵循协议,可以通过空扩展体的扩展来遵循协议。就是a: protocalb {}
4.协议要只能被类遵循,需要在协议冒号后面加class
5.多个协议的合成是可以作为参数的,用符合(&)相隔
6.通过is和as检查类型对于协议是否符合遵循。
7.加optional修饰的属性或者方法,表示可选,可选是用在和oc进行交流时,需要在协议前加@objc

相关文章

  • git协议

    git支持的协议 local协议 https协议 ssh协议 git协议 github常用的协议

  • Dubbo服务 上传文件解决方案以及Hessian协议

    协议支持Dubbo支持多种协议,如下所示: Dubbo协议 Hessian协议 HTTP协议 RMI协议 WebS...

  • Procotol 和 Delegate

    目录 Procotol 协议的概念 协议的分类 协议的定义 协议的遵循 协议的方法 协议的属性 Delegate ...

  • 计算机网络题目

    几种协议分别属于哪一层传输层协议:TCP协议、UDP协议应用层协议:FTP、HTTP、SMTP网络层协议:IP协议...

  • ARP协议

    地址解析协议ARP 网络层四大协议:ARP协议,IP协议,ICMP协议,IGMP协议。 ARP(Address R...

  • IP数据报格式

    前言 先回顾一下TCP/IP协议栈 网络层的协议有IP协议、ARP协议、ICMP协议和IGMP协议。其中IP协议是...

  • 名词解析

    网络层:IP协议 : 网络协议ICMP协议: Internet互联网控制报文协议 ->IP协议的附属协议 IP...

  • 如何将Git仓库备份到本地

    git常用的传输协议传输协议.png哑协议:哑协议传输进度不可见;智能协议传输可见。传输速度:智能协议比哑协议传输...

  • NSURLSession学习笔记

    �Http协议-超文本传输协议 Http协议是应用层协议,底层要求的传输协议必须是可靠的传输协议,通常是TCP协议...

  • dubbo支持的7种协议 (1)

    支持的协议有哪些。 1、dubbo 协议 (默认) 2、rmi 协议 3、hessian 协议 4、http 协议...

网友评论

      本文标题:协议

      本文链接:https://www.haomeiwen.com/subject/bpemyhtx.html