次のように、Javaでクラスのインスタンスを作成しました。
ABC ab = new ABC();
ab
別のクラスでこのインスタントにアクセスしたいXYZ
。このオブジェクトをクラスXYZで使用できるようにするにはどうすればよいですか?
次のように、Javaでクラスのインスタンスを作成しました。
ABC ab = new ABC();
ab
別のクラスでこのインスタントにアクセスしたいXYZ
。このオブジェクトをクラスXYZで使用できるようにするにはどうすればよいですか?
問題に関するより具体的な情報がなければ、質問に答えることは困難ですが、これは確かに機能します。
そのクラスのどこでも使用したい場合は、セッターを使用して他のクラスのインスタンス変数を初期化できます。
class someClass {
void someMethod() {
ABC ab = new ABC();
XYZ xyz = new XYZ();
xyz.setABC(ab);
}
}
class XYZ {
ABC ab;
//...
void setABC(ABC ab) {
this.ab = ab;
}
//...
void doSomething() {
// do something with instance variable ab
}
}
オブジェクト パラメータをあるクラスに別のクラスに渡す方法は 2 つあります。
パラメータをメソッドに渡す
public void passMethod(ABC ab) {
}
パラメータをコンストラクタに渡す
public class XYZ {
public XYZ(ABC ab) {
}
}
私はこの質問が古いことを知っていますが、私が正しければ、オブジェクトを別のクラスに転送して使用したいと考えています。
そのためには、いくつかのことが必要です
クラス XYZ には、パラメーター「オブジェクト」を受け取るコンストラクターが必要です。
class XYZ{
private Object ab
public XYZ(Object ab){
this.ab = ab;//This is the constructor called when you create an XYZ object, and want to use the Object ab in XYZ
}