クラスCarte
とCroyant
,DeuxEx
はCarte
のサブクラスです。 Croyant
とDeuxEx
には、各クラスに存在する属性valueCroyant
またはvalueDeuxEx
があります。私はクラスCarte
のObject
の配列を作成します。この配列のオブジェクトからメソッドgetValueCroyant()
またはgetValueDeuxEx()
にアクセスするにはどうすればよいですか。スーパークラスのオブジェクトの配列からサブクラスの関数へのアクセス
Class Carte{
private int id;
public Carte(int id){
this.id=id;
}
}
Class Croyant extends Carte{
private int valueCroyant;
public Croyant(int id){
super(id);
}
public int getValueCroyant(){
return this.valueCroyant;
}
}
Class DeuxEx extends Carte{
private String valueDeuxEx;
public DeuxEx(int id){
super(id);
}
public String getValueDeuxEx(){
return this.ValueDeuxEx;
}
}
public static void main(String[] agrs){
ArrayList<Carte> array_carte = new ArrayList();
Croyant cr1 = new Croyant(1);
Croyant cr2 = new Croyant(2);
DeuxEx de1= new DeuxEx(3);
DeuxEx de2 = new DeuxEx(4);
array_carte.add(cr1);
array_carte.add(cr2);
array_carte.add(de1);
array_carte.add(de2);
for(Carte c:array_carte){
if(c instanceof Croyant){
System.out.println(c.getValueCroyant());
}else{
System.out.println(c.getValueDeuxEx());
}
}
}
私はこのようなブールをしたいですが、動作しません。誰かが私を助けてくれますか?
そのコードはコンパイルされません。また、 "boucle"ではおそらく "ループ"を意味します。 GoogleとGoogle翻訳はあなたの友人です。 – Mena
あなたの 'main()'クラスはこのクラスの一部ですか、単にこのコードを実行しようとしていますか? – nullpointer