假设我有一个名为 Dog 的类,它是 Animal 的子类
我有一个方法需要根据字符串参数创建特定动物子类的实例
public void createAnimalType(String animalType) {
Class clazz = Class.forName(animalType);
//Check if animalType equals Dog, or Cat, or Fox, etc
// Example
Dog dog = (Dog) clazz.newInstance();
...
在这种情况下,有没有办法在不使用子类(狗)的显式转换的情况下创建自身的实例(狗、猫等,不是动物类型)?
我可能错过了一个更好的多态性(就像我为什么要这样做......应该将它转换为 Object 或 Anmial :-))
感谢您帮助我在这方面变得聪明。