Swift从0开始学习 协议和扩展 day5
协议:定义行为的契约
协议类似于其他语言中的接口。它们定义了一组方法、属性或其他需求,供结构体、类、枚举等类型去遵循和实现。协议并不实现这些需求,而是作为一种约定或合同,确保实现协议的类型会遵循特定的行为。
协议的定义和遵循
在 Swift 中,使用 protocol
关键字来定义协议。例如:
protocol ExampleProtocol {
var simpleDescription: String { get }
func exampleMethod()
}
在上述代码中,ExampleProtocol
定义了一个协议,要求遵循者实现一个只读属性 simpleDescription
和一个方法 exampleMethod()
。遵循协议非常简单,只需使用 struct
、class
或 enum
实现该协议:
struct ExampleStruct: ExampleProtocol {
var simpleDescription: String = "This is an example."
func exampleMethod() {
print("Example method executed.")
}
}
协议中的属性和方法要求
协议可以要求属性是只读或读写,还可以要求特定的方法实现:
protocol FullyNamed {
var fullName: String { get } // 只读属性
var age: Int { get set } // 读写属性
}
protocol Greetable {
func greet(name: String) -> String
}
实现这些协议时,遵循者需要满足这些要求:
struct Person:
原文地址:https://blog.csdn.net/weixin_45958328/article/details/143907517
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!