Swift协议(Protocol)
Swift协议(Protocol)是一种定义了一组方法的蓝图,可以被其他类型(如类、结构体)遵守和实现。协议可以用来定义一组标准方法,以便在程序中实现这些方法。
下面是一个Swift协议的定义示例:
swiftprotocol MyProtocol {
func doSomething()
func doSomethingElse()
}
这个协议定义了两个方法doSomething()
和doSomethingElse()
,任何类型只要实现了这两个方法,就可以被称为遵守了MyProtocol
协议。
比如下面是一个类遵守这个协议的示例:
swiftclass MyClass: MyProtocol {
func doSomething() {
print("Doing something")
}
func doSomethingElse() {
print("Doing something else")
}
}
在这个例子中,MyClass
类实现了MyProtocol
协议中定义的两个方法。因此,我们可以将MyClass
实例赋值给一个接受MyProtocol
类型的变量:
swiftlet myObject: MyProtocol = MyClass()
myObject.doSomething() // prints "Doing something"
myObject.doSomethingElse() // prints "Doing something else"
在Swift中,协议可以有很多有用的用途,例如定义视图控制器的基础接口(如UITableViewDataSource
和UITableViewDelegate
),或者定义自定义的接口。
漫思