什麼是抽象類?怎麼定義?
什麼是抽象類?怎麼定義?這是屬於 java技術裡面的一個知識點,本期教程就是圍繞這個問題做的相關介紹,當定義一個類時,常常需要定義一些成員方法描述類的行為特徵,但有時這些方法的實現方式是無法確定的。例如,在定義Animal類時,shout( )方法用於描述動物的叫聲,但是不同動物的叫聲是不同的,因此在shout( )方法中無法準確地描述動物的叫聲。
針對上面描述的情況,Java提供了抽象方法來滿足這種需求。抽象方法是使用abstract關鍵字修飾的成員方法,抽象方法在定義時不需要實現方法體。抽象方法的定義格式如下:
abstract void方法名稱 (引數);
當一個類包含了抽象方法,該類必須是抽象類。抽象類和抽象方法一樣,必須使用abstract關鍵字進行修飾。
抽象類的定義格式如下:
abstract class 抽象類名稱{
訪問許可權返回值型別 方法名稱(引數){
return [返回值] ;
訪問許可權abstract返回值型別抽象方法名稱(引數) ;
//抽象方法,無方法體
}
從以上格式可以發現,抽象類的定義比普通類多了一些抽象方法,其他地方與普通類的組成基本上相同。
抽象類的定義規則如下。
(1)包含一個以上抽象方法的類必須是抽象類。
(2)抽象類和抽象方法都要使用abstract關鍵字宣告。
(3)抽象方法只需宣告而不需要實現。
(4)如果一個類繼承了抽象類,那麼該子類必須實現抽象類中的全部抽象方法。
下面透過一個案例學習抽象類的使用,如檔案4-10所示。
在檔案4-10中,第2~5行程式碼是宣告瞭一個抽象類
Animal,並在Animal類中宣告瞭個抽象方法 shout ( );第9~11行程式碼在子類Dog中實現父類Anima的抽象方法shout( );第17行程式碼透過子類的例項化物件呼叫shout( )方法。
注意:
使用abstract關鍵字修飾的抽象方法不能使用private修飾,因為抽象方法必須被子類實現,如果使用了private宣告,則子類無法實現該方法。
以上就是為大家介紹的 Java教程之什麼是抽象類?怎麼定義?的相關內容,希望上面的介紹能夠幫助正在學習 Java技術的同學。想了解更多Java技術,歡迎關注小千,後期會繼續分享更多Java知識。
本文來自千鋒教育,轉載請註明出處。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31548651/viewspace-2789788/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 什麼是抽象抽象
- Java 介面和抽象類是什麼,有什麼區別Java抽象
- 到底什麼是抽象?抽象
- 什麼是物件?什麼是抽象?怎麼理解物件導向的程式設計思想?物件抽象程式設計
- 物件導向中類和物件的定義是什麼?物件
- 抽象類和介面到底是什麼垃圾——秒懂抽象
- 什麼是庫存?什麼是零庫存?庫存的定義
- 雲端計算的定義是什麼?
- 「譯」什麼是抽象語法樹抽象語法樹
- MySQL 中的 DEFINER(定義者)是什麼MySql
- 區塊鏈的概念定義是什麼區塊鏈
- Declaration vs. Definition of a variable in C(在c中,什麼是宣告什麼是定義)
- java中的抽象類abstract怎麼使用?Java抽象
- WIFI網路覆蓋的定義是什麼WiFi
- 什麼是計算機編碼的定義?計算機
- 設計模式的數學定義是什麼?設計模式
- DMAIC定義階段的重點是什麼?AI
- 資料中臺定義是什麼,作用有哪些?
- BIM技術的起源與定義是什麼
- 什麼是協議?| 網路協議定義協議
- Web含義是什麼Web
- 什麼是Python函式?如何定義函式?Python函式
- 什麼是介面?如何定義介面?如何實現介面?
- python函式的定義和呼叫是什麼?Python函式
- 什麼是機器學習:一次權威定義之旅機器學習
- mac截圖快捷鍵是什麼怎麼設定 mac截圖快捷鍵是ctrl加什麼Mac
- 什麼是JavaScript類庫JavaScript
- ssl/tls是什麼?是怎麼工作的?TLS
- shell 中怎麼定義常量
- 防火牆是什麼?怎麼理解?防火牆
- 錢是什麼?怎麼賺錢?
- python新式類是什麼Python
- Rust 列舉類是什麼Rust
- css--BFC是什麼,有什麼用,怎麼用?CSS
- 蘋果Feedback是什麼?有什麼用?怎麼刪除?蘋果
- 什麼是Python?前景怎麼樣?Python
- 這是抽象工廠麼?抽象
- 網頁的盒子模型是什麼?怎麼設定盒子樣式網頁模型