私は同じことを行うが、異なる方法で2つのクラスを持っています。私は設定の設定に応じて、これらのクラスのいずれかのオブジェクトを作成する必要があります。ここで私は何をしたいのかの簡単な例です。Androidは同様のクラスのオブジェクトを作成します
public class A {
public string getLetter() {
return "A";
}
}
public class B {
public string getLetter() {
return "B";
}
}
public class MainActivity {
private myObject; // How to declare it in my case?
private int config = 0;
public void onCreate(Bundle savedInstanceState) {
if (config == 0) {
myObject = new A();
} else {
myObject = new B();
}
String letter = myObject.getLetter();
}
}
は、実はすべてがはるかに複雑です。クラスAおよびBのそれぞれは、異なるデータソースを非同期的にリッスンし、さらなる処理で使用できる形式に変換し、MainActivityに渡します。構成によっては、1つのデータソースのみを選択する必要があります。これどうやってするの?バリアントwith
letter = A.getLetter();
は動作しません。