Java面向对象三大特性-多态

1 多态概念

多态是同一个行为具有多个不同表现形式或形态的能力。

多态就是同一个借口,使用不同的实例而执行不同的操作。

多态性是对象多种表现形式的体现。

2 多态存在的三个必要条件

    继承 重写 父类引用指向子类对象:Animal a = new Dog();
使用多态方式调用属性和方法时,能调用所有父类的属性和方法,如果子类重写了父类的方法,则按照子类的方法内容执行,无法调用子类 单独存在的方法 和属性。 若将多态实例化对象(如上述a)强制转换为子类对象((Dog)a),则其可以调用子类的方法和属性。

3 多态的实现方式

  1. 重写
  2. 接口
public interface Person {
          
   

    int PERSION = 1;
    
    void person();

    default void defaultPerson(){
          
   
        System.out.println("defaultPerson");
    }
}
------------------------------------------
public class LiSi implements Person{
          
   

    int lisi = 2;

    @Override
    public void person() {
          
   
		System.out.println("LiSi")
    }
}
--------------------------------------------
public class Demo {
          
   

    public static void main(String[] args) {
          
   

        Person lisi = new LiSi();
        lisi.person();
        lisi.defaultPerson();

    }
}
//结果
----------------------------------------------
LiSi
defaultPerson
  1. 抽象类和抽象方法

4 多态的优点

    消除类型之间的耦合关系 可替换性 可扩充性 接口性 灵活性 简化性
多态的好处:可以是程序有良好的扩展,并可以对所有类的对象进行通用处理。
经验分享 程序员 微信小程序 职场和发展