swift协议_010-swift协议protocol
Posted 爱你久久
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了swift协议_010-swift协议protocol相关的知识,希望对你有一定的参考价值。
//: Playground - noun: a place where people can play import UIKit //-----协议-------// //协议:声明一组属性和方法,由协议的签订者来实现协议方法。 //1.协议的声明 protocol WXHLProtocol { //声明一组方法 func doHomework() func dontLate() //3.Swift的协议中可以声明属性 var money : Int {set get} var classNumber : Int {get} } //2.协议的签订 类名:协议名 class Person : WXHLProtocol { var name : String init(name : String) { self.name = name } //协议的签订者中必须实现协议方法 func doHomework() { print("\(name)在写作业") } func dontLate() { print("\(name)不要迟到") } //实现协议中声明的属性 var money : Int { set { self.money = newValue } get { return self.money } } var classNumber : Int { return 1000 } } let p = Person(name: "小宝") p.doHomework() p.dontLate() //4.协议的继承 子协议 : 父协议 protocol EngineerProtocol : WXHLProtocol { var job : String {get set} var header : String {get} } class SwiftEngineer : Person, EngineerProtocol { //协议中声明的属性可以是存储属性,也可以计算属性 var job : String = "Swift Engineer" var header : String = "TeamLeader" }
以上是关于swift协议_010-swift协议protocol的主要内容,如果未能解决你的问题,请参考以下文章
是否有可能有一个强制静态方法而不是类方法的 Swift 协议,反之亦然?
Google 协议缓冲区 - protoc-c 和 protoc 之间的二进制兼容性