满足多态的条件:继承,重写,父类引用子类
简单的理解就是,当我们写了一个父类,我们在父类写了一个方法,子类对该方法进行了重写。那么这个方法就有两个不同的输出形式,当我们需要使用父类的该方法时,我们直接new 一个父类的对象时,我们调用方法,输出的是父类的结果,同理,new子类时,我们会输出子类的结果。
使用多态的好处就是,若我们一开始就使用了某一个子类的方法,过一段时间我们发现这个方法不能用了,但是想要重构的时候发现用到了好多不想用的属性,还有一些属性没有,那么这个时候我们重新写一个子类,那么就能愉快的解决这个问题了,而且利用多态的话,换一个子类的方法并不会影响我们代码的整体运行。
------------------------------------Employee.java-------------------------------
public class Employee { private String id; private String firstname; private String salary; public void say(){ System.out.println("gfbwff"); }}
--------------------------------Manager.java---------------------------------------
public class Manager extends Employee { private String phonenumber; public void say(){ System.out.println("duotai"); }
}
--------------index.java---------------------
public class index { public static void main(String args[]){ Employee e; e = new Employee(); e.say(); e = new Manager(); e.say(); } }-------------结果----------------------------
gfbwff duotai