1) 引用多态
引用多态:将父类引用指向到子类对象上
2) 方法多态
创建父类本类对象时,调用的是本类的方法;
创建子类对象时,调用的方法是子类重写的方法或者继承的方法。
如:java集合框架中的算法,如:搜索和排序,都被称为多态,因为相同的方法可以再相似的接口上有不同的实现。引申:java集合
父类:
public class Animall { public void eat(){ System.out.println("动物都吃东西"); } }
子类:
public class Dogg extends Animall{ @Override public void eat() { System.out.println("狗爱吃肉"); } }
子类2:
public class Human extends Animall { public void speak(){ System.out.println("人会说话"); } }
调用:
public class initial { public static void main(String[] args) { Animall ma1= new Animall(); // 引用多态:将父类引用指向到子类对象上 Animall ma2 = new Dogg(); Animall ma3= new Human(); ma1.eat(); ma2.eat(); // 因为speak是子类独有的方法,父类没有,所以引用多态创建的对象是无法使用子类的方法的 // ma3.speak(); } }
引用多态:将父类引用指向到子类对象上