相关疑难解决方法(0)

是否可以编写一个接受不同抽象的泛型参数的方法?

作为这个问题后续,是否有可能编写一个方法来增加Dog一个合适的房间?(在这个例子中,它会接受Animal房间或Dog房间.)或者我是否被迫写下两种不同的方法如下?(因为类型擦除,我甚至不能依赖重载).

public class Rooms {
   interface Animal {}
   class Dog implements Animal {}
   class Room<T> {
      void add(T t) {}
   }

   void addDogToAnimalRoom(Room<Animal> room) {
      room.add(new Dog());
   }

   void addDogToDogRoom(Room<Dog> room) {
      room.add(new Dog());
   }   
}
Run Code Online (Sandbox Code Playgroud)

java generics pecs bounded-wildcard

4
推荐指数
1
解决办法
123
查看次数

标签 统计

bounded-wildcard ×1

generics ×1

java ×1

pecs ×1