我希望找到一种方法,可以覆盖超类中的可选属性,并使用不同类型。如果我要测试类似下面这样的东西:
protocol protocol1
{
func testOne()
}
protocol protocol2 : protocol1
{
func testTwo()
}
class class1
{
var toto : protocol1?
init()
{
}
}
class class2 : class1
{
override var toto : protocol2?
}
let test = class2()
我在这一行代码中遇到了错误:override var toto : protocol2?
属性“toto”的类型“protocol2”无法覆盖具有类型“protocol1”的属性
我已经搜索过了,发现了这个帖子,但它仅适用于非可选属性。