package question20240710;public class Question {/*1. 什么叫做多態,條件是什么?2. 使用多態特性,帶來了什么樣的好處?3. 使用多態特性,注意什么樣的弊端?4. 關于多態的弊端我們如何解決?5. 在A包中我要同時使用B包下的Student和C包下的Student類,該如何使用?6. final修飾類,修飾方法,修飾變量的特點?*/public static void main(String[] args) {/*1.多態是同類型的對象,表現出的不同形態;條件是1.有繼承關系、2.父類引用指向子類對象 Animal a = new Dog();2.多態的特性是可以用父類對象接收子類對象,擴展性和便利性,在方法種不需要為每個子類對象都寫方法,而是寫一個通用的方法,并且用父類接收3.弊端是子類中特有的功能,使用多態后無法使用;原因:編譯看左邊,也就是看父類,父類中是不具備子類中特有的功能(方法)等的,所以說無法通過編譯4.解決方法:可以對父類的變量強制類型轉換(大類變小類),將父類型轉換為想要的子類型。 如:Animal a = new Dog();Dog d = (Dog) a;但是要注意的是,不能亂轉換,要根據轉換前的子類進行轉換,如上方代碼,轉換前子類是Dog,所以說也只能強轉為Dog。5.使用全類名 B.Student 和 C.Student。6.final 修飾類,無法繼承final 修飾方法,無法重寫final 修飾變量,變量值無法修改,變為常量。*/System.out.println("hello Java");}
}