私の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を取得したい別のファイルServletA.javaでの私の目標。A.javaクラスから静的呼び出しを行うことによって...それは機能しますか、またはより良い方法がありますか?
public class ServletA{
DataStorage Z = A.getData();
}
注: はい、これはコンパイルされませんが、解決策はありますか?
ソリューションに対する私の制約:
- A.java はレガシー コードベースであるため、最小限の変更を加える
- 悪夢である A() コンストラクターには 20 以上の入力が多数あります
- 私のアーキテクトは、Aを抽象クラスに変更することによってもそれに触れたくありません
- ServletA.java で A のインスタンスを作成できません
EDIT1:私の質問は、ServletA.java で A のインスタンスを作成せずに、ServletA.java から X にアクセスするソリューションがあるかどうかです。上記のコードは、方法を考えたことを示す例ですが、機能しません。
編集2:反対票を投じたい場合は、礼儀として説明を求めてください。ありがとう!