我有一個必須用參數構造的基類。在子類中,我需要在構造基類之前準備好這個參數,但是在Java之前,必須先調用超類。處理這種情況的最佳方式是什麼(請參見下面的簡單示例)。爲超級構造函數準備參數
class BaseClass {
protected String preparedParam;
public BaseClass(String preparedParam) {
this.param = param;
}
}
class ChildClass {
public ChildClass (Map<String, Object> params) {
// need to work with params and prepare param for super constructor
super(param);
}
}
有時,超級構造函數有一個值,但超類沒有方法找回您在傳遞的對象,如果是這樣的話,你需要在超類對象,以及在你自己的代碼,那麼工廠方法是一個解決方案,而靜態準備方法是沒有解決方案。 – 2011-11-04 17:57:53