Java-什么是多态,多态的具体体现有那些?

多态:方法或者对象有多种形态,是OOP的第三大特征,是建立在封装和继承之上的

多态的具体体现:

  • 方法多态
    • 重载体现多态
    • 重写体现多态
  • 对象多态
    • 对象的编译类型和运行类型可以不一致,编译类型在定义时就确定了,无法改变
    • 对象的允许类型时可以变化的,可以通过getClass()可以查看运行类型。
    • 编译类型看定义时看等号的左边,允许类型看等号的右边。

举例说明:

public class Test{
    public static void main(String[] args) {
        A a = new B(); //向上转型
        A b = a;
        System.out.println("a的运行类型为:"+a.getClass()); //B
        a = new C();//向上转型
        System.out.println("a的运行类型为:"+a.getClass()); //C
        a = b;
        System.out.println("a的运行类型为:"+a.getClass()); //B
    }
}

class C extends B{  //子类

}

class B extends A{  //父类

}

class A{        //超类

}

 

posted @ 2022-11-01 01:39  通过程序看世界  阅读(385)  评论(0)    收藏  举报