【发布时间】:2016-02-05 12:38:49
【问题描述】:
我玩了一点面向协议的编程,遇到了一个可能很常见的案例,但我不知道如何解决它。下面我有 2 个协议,如果该类打算实现该协议,则两者都需要一个名为 param 的 var。但是在协议中, var 参数是 2 种不同的类型。那么我怎样才能在不改变协议的情况下实现两者呢?代码如下:
protocol firstProtocol
{
var param:Int { get set }
}
protocol secondProtocol
{
var param:String { get set }
}
class protocolImplementer: firstProtocol, secondProtocol
{
var param:String = "foo"
var param:Int = 0 // Invalid redeclaration of 'param'
}
【问题讨论】: