2016-12-21 19 views
-1

私は犬、猫、マウスのクラスを持っているなら、各動物のいくつかのオブジェクトを作成し、それぞれの個別の犬、猫とマウスタイプの特定のリストに追加します。異なるJavaタイプをリストの同じリストに格納していますか?

これをオブジェクトリストと同じリストに保存できますか?

私はしようとしている:

List<Object> animalData = new ArrayList<>(); 

、次いで元追加しようとした:大成功することなく動物アレイにマウス配列を。私が欲しいもの

list animals<<dogs>,<cats>,<mouses>> 
+2

犬、猫とマウスが動物を延長した場合は、

+1

ジェネリックリストをリストに追加することができ均一である - それらは同じタイプのもの全ての束を含んでいます。リストに3つの異なるものが含まれている場合、それはリストではありません。 3つのフィールドを持つオブジェクトです。 'AnimalData'クラスを作成し、' List dogList'、 'List catList'、' List mouseList'のようなフィールドを与えることができます。 – khelwood

+1

この問題の解決方法のヒントを得るには、多型についてお読みください。 いつでもここから始めることができます:https://en.wikipedia.org/wiki/Polymorphism_(computer_science) – trappski

答えて

1

あなたはそれらすべてがそうすることができます、その後、単一のクラスを拡張します場合。

class Animal { 

} 
class Cat extends Animal { 

} 
class Dog extends Animal { 

} 
class Mouse extends Animal { 

} 
List<Animal> animals = Arrays.asList(new Cat(), new Dog(), new Mouse()); 
関連する問題