package com.duotai;
public class cat implements Animals{
public void eat(){
System.out.println("吃鱼");
}
public void catchMouse()
{
System.out.println("抓老鼠");
}
}
public interface Animals {
public void eat();
}
public void animalTest(String className) throws ClassNotFoundException, IllegalAccessException, InstantiationException {
//利用反射获得类的对象
Class animalClass = Class.forName(className);
Animals animal = (Animals) animalClass.newInstance();
animal.eat();
}
public class demo {
public static void main(String[] args) {
demo a =new demo();
try {
a.animalTest("cat");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InstantiationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
} 对于多态的定义以及使用方法我都可以理解,但是我最不理解的就是多态到底具有什么用处,我查了网上大部分都是举例父类animal,,,子类dog,cat 。。。。animal a=new dog();然后调用方法a.方法,,,,,,,但是我不理解的就是我直接dog a = new dog();调用方法a.方法不就可以了,多态的优点在哪里呢?在代码方面我也并没有看到有优化的作用啊。并且与继承相比较,多态好像只多了一个重载的一个作用?,希望各位指导一下,十分感谢!!
添加回答
举报
0/150
提交
取消