java抽象類別

來源:互聯網
上載者:User

標籤:

JAVA:
1、普通的JAVA類也能夠在CLASS前加ABSTRACT聲明為抽象,僅僅只是此時的該類不再能夠執行個體化。


2、假設一個類裡有一個以上的抽象方法。則該類必須聲明為抽象類別。該方法也必須聲明為抽象。


3、抽象類別不能被執行個體化。但不代表它不能夠有建構函式。抽象類別能夠有建構函式,備繼承類擴充用 abstract 修飾的類是抽象類別。

抽象類別是不完整的,而且它僅僅能用作基類。它與非抽象類別的不同:   1、抽象類別不能直接執行個體化。而且對抽象類別使用 new 運算子是編譯時間錯誤。儘管一些變數和值在編譯時間的類型能夠是抽象的。可是這種變數和值必須或者為 null,或者含有對非抽象類別的執行個體的引用(此非抽象類別是從抽象類別派生的)。   2、同意(但不要求)抽象類別包括抽象成員。   3、抽象類別不能被密封。

  當Congo抽象類別派生非抽象類別時,這些非抽象類別必須詳細實現所繼承的全部抽象成員。從而重寫哪些抽象成員。在下邊的示範範例中:    abstract class A{ public abstract void F();}   abstract class B: A{ public void G() {}}   class C: B{ public override void F() { // actual implementation of F }}    抽象類別 A 引入抽象方法 F。類 B 引入還有一個方法 G,但因為它不提供 F 的實現,B 也必須聲明為抽象類別。類 C 重寫 F,並提供一個詳細實現。因為 C 中沒有了抽象成員,因此能夠(但並不是必須)將 C 聲明為非抽象類別。   抽象類別與介面緊密相關。

然介面又比抽象類別更抽象,這主要體如今它們的區別上:1)類能夠實現無限個介面,但僅能從一個抽象(或不論什麼其它類型)類繼承。從抽象類別派生的類仍可實現介面。從而得出介面是用來解決多重繼承問題的。2)抽象類別其中能夠存在非抽象的方法。可介面不能且它裡面的方法僅僅是一個聲明必須用public來修飾沒有詳細實現的方法。3)抽象類別中的成員變數能夠被不同的修飾符來修飾。可介面中的成員變數預設的都是靜態常量(static final)。4)這一點也是最重要的一點本質的一點"抽象類別是對象的抽象。然介面是一種行為規範"。   以上是它們本身的異同,以下再來從實際應用講講它們的異同!

  不同之處: 定義  抽象類別表示該類中可能已經有一些方法的詳細定義,可是介面就只只能定義各個方法的介面(方法名,參數列表。傳回型別),並不關心詳細細節。 使用方法  1)在繼承抽象類別時,必須覆蓋該類中的每一個抽象方法。而每一個已實現的方法必須和抽象類別中指定的方法一樣,接收同樣數目和類型的參數。具有同樣的傳回值。這一點與介面同樣。

  2)當父類已有實際功能的方法時,該方法在子類中能夠不必實現,直接引用的方法,子類也能夠重寫該父類的方法(繼承的概念)。

  3)而實現 (implement)一個介面(interface)的時候。是一定要實現介面中所定義的全部方法,而不可遺漏不論什麼一個。

  4)另外,抽象類別不能產生對象的。但能夠由它的實作類別來聲明對象。

  鑒於此,當實現一個介面。我們經常寫一個抽象類別,要實現介面所需要的某些子類通用方法,當遵循不同子類的準備,你可以繼承抽象類別使用,在消除了麻煩,必須實現每個的共同的處理。

java抽象類別

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.