1

で基本的な在庫システムを作成しようとしていjavaます。すべてのキーでありmap、すべてのクラスを拡張するアイテム。UsableItemたとえば、Tophat extends UsableItem. 問題はmyTophat、キーを type にしないとアイテム/オブジェクトを保存できないため、Tophat他のタイプのアイテムを保存できないことです。map拡張するすべてのものを保存するにはどうすればよいUsableItemですか?

4

2 に答える 2

3

次のように宣言します。

Map<UsableItem, SomeObject> map;

UsableItem次に、タイプまたはそのサブタイプのオブジェクトをキーとして追加できます。

于 2012-09-01T10:34:51.427 に答える
0

Javaジェネリックの「ワイルドカード」の強力な利点を利用できます

HashMap<? extends UsableItem, Integer>

または

HashMap<T extends UsableItem, Integer>
于 2012-09-01T10:33:34.037 に答える