1. 程式人生 > 實用技巧 >多型,匿名內部類筆記整理

多型,匿名內部類筆記整理

父類型別 變數名=new 子類物件;

變數名.方法名( );

除了非靜態方法是編譯時看左邊,執行時看右邊;其餘都是編譯時看左邊,執行時也看左邊

多型的應用場景:

  • 變數多型-->意義不大,繼承也能實現
  • 形參多型:方法的引數型別為父類型別,這樣引數就可以接收父類型別的物件或者它所有的子類物件(方法名 (父類型別 引數)
  • 返回值多型:如果返回值型別為父類型別,那麼就可以返回該父類型別的物件或者它所有子類物件(return new 要返回的方法)

下轉前要判斷:

instanceof關鍵字:

變數名 instanceof 資料型別 
如果變數屬於該資料型別,返回true。
如果變數不屬於該資料型別,返回false。

if( anl instanceof Cat){//判斷anl是否能轉換為Cat型別,如果可以返回:true,否則返回:false Cat c = (Cat)anl;//安全轉換 }

匿名內部類:

作用就是為了簡化程式碼,在不建立子類的情況下,直接得到一個類的子類物件

格式:
new 類名(){
重寫 實現抽象方法
};

如果想要多次使用,就在new之前賦給一個物件,這個物件的型別要和原來的抽象類或者介面類類名一致

如果只是使用一次,直接在末尾呼叫該抽象方法