重撿Java(十四)接口與繼承 一些相關知識

這些知識大多已經(jīng)知道是怎么回事了。過一遍將來面試的時候用

對象轉型

所謂的轉型,是指當引用類型和對象類型不一致的時候,才需要進行類型轉換

  • 所有的子類轉換為父類
  • 父類轉子類,有的時候行,有的時候不行,所以必須進行強制轉換。
  • 沒有繼承關系的兩個類,互相轉換,一定會失敗
  • 實現(xiàn)類可以轉接口
  • 接口不可以轉實現(xiàn)類
    intanceof
package charactor;
  
public class Hero {
    public String name;
    protected float hp;
      
    public static void main(String[] args) {
        ADHero ad = new ADHero();
        APHero ap = new APHero();
         
        Hero h1= ad;
        Hero h2= ap;
         
        //判斷引用h1指向的對象,是否是ADHero類型
        System.out.println(h1 instanceof ADHero);
         
        //判斷引用h2指向的對象,是否是APHero類型
        System.out.println(h2 instanceof APHero);
         
        //判斷引用h1指向的對象,是否是Hero的子類型
        System.out.println(h1 instanceof Hero);
    }
}

多態(tài)

同一個行為具有多個不同表現(xiàn)形式或形態(tài)的能力。

優(yōu)點

  1. 消除類型之間的耦合關系
  2. 可替換性
  3. 可擴充性
  4. 接口性
  5. 靈活性
  6. 簡化性

必要條件

繼承
重寫
父類引用子類

super關鍵字

直接父類對象的引用

Object

頂級父類

final關鍵字

  • final修飾類 表示不能被繼承
  • final修飾方法 表示不能被重寫
  • final修飾基本類型變量 只能賦一次值
  • final修飾引用 表示該引用只有1次指向對象的機會
  • 表示常量 public static final int itemTotalNumber = 6;//物品欄的數(shù)量

抽象類

在類中聲明一個方法,這個方法沒有實現(xiàn)體,是一個“空”方法

這樣的方法就叫抽象方法,使用修飾符“abstract"

當一個類有抽象方法的時候,該類必須被聲明為抽象類

“感覺這個功能只是為了防止開發(fā)的時候子類忘記重寫父類方法用的”

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容