我有一個具有以下私有變數的抽象基類
private Map<String, ?> options;
我希望將擴展我的基類的所有其他類都實作以下方法
protected abstract void initOptions(Map<String,?> options)
我的問題是我不能選擇 Map 以外的任何其他型別來實作
@Override
protected void initOptions(Map options) throws InternalLoginException {
...
}
處理這種情況的正確方法是什么,我無法控制選項 Map 的型別,但我想讓 initOptions 方法的實作類知道 Map 中的鍵是 String 型別,值可以是任何物件。
uj5u.com熱心網友回復:
public abstract class BaseClass {
abstract void methodToOverRide(Map<String, ?> parameter);
static class SubClass extends BaseClass{
@Override void methodToOverRide(Map<String, ?> parameter) {
//do something?
}
}
}
你所擁有的應該如上所示作業。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/470403.html
上一篇:動態分配不規則矩陣