我遇到了一个问题,但是我无法想出解决方法。
假设我们有一个基类(可能来自FrameworkA),其中有一个名为subject
的属性:
public class MyClass {
public var subject: String
}
我们有一个协议(可能来自FrameworkB),具有另一个属性但名称相同:
而且,我们有一个协议(可能来自 FrameworkB),其具有另一个属性,但名称相同:
public protocol MyProtocol {
var subject: String { get }
}
这两个属性代表完全不同的东西。
我该如何创建一个继承自 MyClass
并实现 MyProtocol
的类?
以及我应该如何使用这些属性?
public class SecondClass: MyClass, MyProtocol {
var MyProcotol.name: String { // <==== Obviously not allowed
return "something"
}
var MyClass.name: String { // <==== Obviously not allowed
return "something else"
}
}
我认为C#允许类似这样的声明,但我不是100%确定...