0
我想我的泛型方法接收一个枚举类型,其中包含我想从方法返回的类。通用方法接收泛型枚举
所以这是多远我得到了(例如):
public class Zoo {
public Monkey apu;
public Lion simba;
public Bird zazu;
public <T extends Animal> T getAnimal(String animal, Animaltype animaltype){
switch(animal){
case "apu":
return animaltype.getType().cast(zoo.feedAnimal(animaltype.getType()))
case "simba":
return ??????????????
case "zazu":
return ??????????????
}
}
}
public enum Animaltype {
MONKEY(Monkey.class),
LION(Lion.class),
BIRD(Bird.class);
Class <?> enumClass;
Animaltype(Class<?> enumClass) {
this.enumClass = enumClass;
}
public Class<?> getType(){
return this.enumClass;
}
}
现在是在回报所需要的一个是T和发现一个对象说。
错误消息是: “不兼容的类型要求:t上找不到java.lang.Object继承
我不知道正确的语法
帖子引起编译错误的代码,并准确和完整的错误。 –
这是不可能填写的东西的“?????”这是完全类型安全的。你需要一个未经检查的演员。 – Jesper