抽象接口 -- 筆記

抽象 (has-a)

抽象: 隨着繼承層次中一個個新子類的定義,類變得越來越具體,而父類則更一般,更通用,有時以至於它沒有具體的實例,這樣的類叫做抽象類。

  1. abstract :抽象的
  2. abstract 可以用來修飾類:抽象類
    – 抽象類不能被實例化
    – 抽象類中有構造器,便於子類實例化時調用
  3. abstract 可以用來修飾方法:抽象方法

使用抽象
創建抽象類:

//加入 abstract 關鍵字
public abstract class Father {	

}

創建抽象方法:

//沒有方法體
public abstract void print();

抽象類的特性: 子類繼承時必須實現父類中所有的抽象方法(除非自身也是抽象類)

抽象方法特性: 抽象方法沒有方法體,可被子類覆蓋重寫

接口

接口: Java中不支持多繼承,一個子類只能擁有一個父類,而有時候需要幾個類中生出一個子類,來繼承他們所有屬性和方法。有了接口,就可以實現子類多繼承的效果。

  1. 接口使用interface來定義
  2. 接口與類爲並列關係
  3. 接口中的屬性只能定義全局常量
  4. 接口中的方法只能是抽象方法
  5. 接口中不能定義構造器,因此接口不能被實例化
  6. 接口與類爲實現關係,並且類可以實現多個接口
  7. 接口與接口之間爲繼承關係,並且可以多繼承

使用接口

//創建接口
public interface Father {
}

接口中只能定義全局常量和抽象方法

public interface Father {
	//全局常量
	public static final String str = "123";
	//抽象方法(無需abstract)
    public void print();
}

通過類來實現,可實現多個接口

public class Son implements Aa,Bb,Cc {
	//實現接口方法
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章