为了账号安全,请及时绑定邮箱和手机立即绑定

对于多态的理解问题?

对于多态的理解问题?

坚持努力的少年 2016-10-16 01:47:04
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.方法不就可以了,多态的优点在哪里呢?在代码方面我也并没有看到有优化的作用啊。并且与继承相比较,多态好像只多了一个重载的一个作用?,希望各位指导一下,十分感谢!!
查看完整描述

1 回答

  • 1 回答
  • 2 关注
  • 1203 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信