基本上,我想覆蓋具有不同參數的父類。例如:用反變參數覆蓋父方法
class Hold<T> {
public var value:T;
public function new(value:T) {
set(value);
}
public function set(value:T) {
this.value = value;
}
}
然後重寫類,喜歡的東西:
class HoldMore extends Hold<T> {
public var value2:T;
public function new(value:T, value2:T) {
super(value);
set(value, value2);
}
override public function set(value:T, value2:T) {
this.value = value;
this.value2 = value2;
}
}
顯然,這將返回一個錯誤,Field set overloads parent class with different or incomplete type
。有沒有解決的辦法?我嘗試使用public dynamic function
,然後在new()
函數中設置set
,但這給出了非常類似的錯誤。有什麼想法嗎?