这是一道软考的题,资料给出的答案我一直不理解,虽然多年的开发经验,还是不能给出跟资料给的答案一样的答案

这是一道软件的题目,资料给出的答案我一直不理解,虽然多年的开发经验,还是不能给出跟资料给的答案一样的答案,感觉资料的答案是错误的,在线请大家看一下,看自己的答案是什么给出理由

img

选C
多态是指:一个特定类型的变量可以引用不同类型的对象,并且自动地调用引用的对象的方法,也就是根据作用到的不同对象类型,响应不同的操作。
用Java代码表示下:

    //向上转型:父类的引用(对象名)指向子类的实例(对象)
        Animal animal = new Dog("奥迪", 30, 90, "泰迪");
        System.out.println("看病前的健康值:"+animal.getHealth());
        master.cure(animal);
        System.out.println("看病后的健康值:"+animal.getHealth());
        
        animal = new Penguin("精灵", 20, 88, "母");
        System.out.println("看病前的健康值:"+animal.getHealth());
        master.cure(animal);
        System.out.println("看病后的健康值:"+animal.getHealth());


响应不同排除B

多态的数据类型可能不同,排除C

方法调用应该是JAVA的说法,多态是对象的多态,静态的多态是刚刚开始就已经编译好的,但运行时多态应该是根据实际情况,分配匹配的方法来操作,这里分配方法应该大概也许可能能理解成不一样的方法吧,我赌D

这个题目我认为选择C,有没有跟我一样答案的小伙伴,我第一次选择的是C,然后我觉得,A,C都是对的