我的java有點生疏,我必須爲這個問題實現一個解決方案。Java棘手的繼承和調用類和方法
鑑於A.java其中:
public class A implements Cloneable{
protected DataStorage Y = new DataStorage();
public A(DataStorage X, about 20 other inputs of different Object types){
this.Y=X;
}
public static DataStorage getData(){
return this.Y;
}
}
我在哪裏我要檢索的對象Y或X.通過這樣做,從A.java類的靜態調用另一個文件ServletA.java目標...它工作還是有更好的方法?
public class ServletA{
DataStorage Z = A.getData();
}
注:是的,這不能編譯,但是有解決方案嗎?
我約束我有解決方案:
- 做出最小的變化A.java因爲它是傳統的代碼庫
- 有很多20+的輸入爲A()構造函數是一個噩夢
- 和我的建築師不想要或者通過改變成一個抽象類
- 不能ServletA.java
編輯1:我的問題是,如果有一個解決方案從ServletA.java訪問X而不在ServletA.java中創建A的實例。上面的代碼是一個例子,表明我想到了一種方法,但它不起作用。編輯2:如果你想downvote,請問我澄清作爲禮貌。謝謝!
'Y'是特定實例,您需要一個'A'實例來訪問它。 – assylias 2012-07-23 15:41:03
解決方案的約束......不能在ServletA.java中創建A的離子... – bouncingHippo 2012-07-23 15:42:05
Lukas,我的問題是如果有解決方案從ServletA.java訪問X而不在ServletA.java中創建A的實例 – bouncingHippo 2012-07-23 15:42:49