多态 --> 父类的引用指向子类的对象,或者说接口的引用指向遵从接口的类对象
举个栗子:
class Animal{
}
class Dog extends Animal{
//新建Dog继承Animal类
}
public class Demo1 {
public static void main(String[] args) {
Dog dog = new Dog();
feed(dog);
//feed这个方法需要的参数是Animal类型的参数
//而我们传入的参数是Dog类型的参数,并且可以正常运行
//这就是父类的引用指向子类的对象
}
public static void feed(Animal animal){
System.out.println(animal.getClass() + "来吃饭了!");
}
}
//输出结果:class nighttest.Dog来吃饭了!
多态的作用:
1.拓宽方法的参数范围
例如:我需要的参数为Animal类型,但是我可以传入Animal类型本身,或者其子类对象,完全没有问题
2.拓宽方法的返回值范围
3.简化代码开发,提高效率,整合数据类型
以上!