在Playground中定义一个协议SayHelloDelegate,并定义两个类Itcast和Boniu,具体要求如下: (1) 协议中有一个sayHello方法,该方法有一个String类型的参数name。 (2) 在Itcast类中定义一个SayHelloDelegate类型的可选属性delegate,一个常量boss,并为boss赋值"博客",最后定义一个play方法,方法中调用sayHello方法,传递boss变量。 (3) Boniu类采纳了协议SayHelloDelegate,实现sayHello(_:)方法为“print("大家好")”,在Boniu类中定义一个变量spokesman,并为它赋值"播播" (4) 声明Itcast类的实例itcast和Boniu类的实例boniu。 (5) 设置itcast的delegate为boniu,并调用play方法。
时间: 2023-12-10 11:38:55 浏览: 105
ReactiveAndroid:一个Playground项目,用于测试Android中基于异步,React式和协同程序的各种网络
下面是实现代码:
```swift
protocol SayHelloDelegate {
func sayHello(name: String)
}
class Itcast {
var delegate: SayHelloDelegate?
let boss = "博客"
func play() {
delegate?.sayHello(name: boss)
}
}
class Boniu: SayHelloDelegate {
var spokesman = "播播"
func sayHello(name: String) {
print("大家好")
}
}
let itcast = Itcast()
let boniu = Boniu()
itcast.delegate = boniu
itcast.play()
```
输出结果为:
```
大家好
```
阅读全文