介面 抽象類的區別

2021-08-27 07:06:23 字數 680 閱讀 3085

/**抽象類(abstract class),

宣告方法的存在而不去實現它的類被叫做抽像類(abstract class)。它用於要建立乙個體現某些基本行為的類,並為該類宣告方法,但不能在該類中實現該類的情況。

1、裡面可以有非抽象方法但介面裡只能有抽象方法;

2、不能建立 abstract 類的例項。然而可以建立乙個變數,其型別是乙個抽像類,並讓它指向具體子類的乙個例項。

3、不能有抽像建構函式或抽像靜態方法。

4、abstract 類的子類為它們父類中的所有抽像方法提供實現,否則它們也是抽像類。取而代之,在子類中實現該方法。知道其行為的其它類可以在類中實現這些方法。

/**介面(inte***ce),

1、是抽像類的變體。在介面中,所有方法都是抽像的。

2、多繼承性可通過實現這樣的介面而獲得。

3、介面中的所有方法都是抽像的,沒有乙個有程式體。

4、介面只可以定義static final成員變數。

5、介面的實現與子類相似,除了該實現類不能從介面定義中繼承行為。當類實現特殊介面時,它定義(即將程式體給予)所有這種介面的方法。然後,它可以在實現了該介面的類的任何對像上呼叫介面的方法。

由於有抽像類,它允許使用介面名作為引用變數的型別。通常的動態聯編將生效。引用可以轉換到介面型別或從介面型別轉換,instanceof 運算子可以用來決定某物件的類是否實現了介面

抽象方法 抽象類 介面 介面和抽象類的區別

某個父類只知道子類因該包含什麼樣的方法,無法知道這些子類如何實現這些方法。抽象類包含該方法但沒有對該方法的具體實現。有抽象方法的類只能被定義為抽象類,抽象類裡可以沒有抽象方法。抽象方法和抽象類的規則 public abstract class shape private string color p...

介面 抽象類區別

一 設計層面 1 抽象類是對一種事務的抽象,即就是對類的抽象,包括屬性 行為,介面是對類的區域性 行為 進行抽象 簡單的例子 飛機和鳥是不同的事物,但他們有乙個共同點就是會飛行,那麼在設計的時候,可以將飛機和鳥設計為抽象類,將他們共同的行為就是飛行抽象為乙個介面,介面中有飛行的方法,使飛機和鳥分別去...

簡述抽象類和介面 抽象類區別的區別

用abstract修飾的類叫抽象類 1 抽象類不能有物件,抽象類不能例項化,不能new 2 abstract修飾的方法為抽象方法,這種方法不能有方法體 什麼內容都沒有 3 抽象類不能有物件,不能new物件 4 有抽象方法的一定是抽象類,抽象類中不一定有抽象方法 5 抽象型別中的抽象方法必須在子類中被...