首頁  >  文章  >  Java  >  java中的抽象類別和介面如何定義使用

java中的抽象類別和介面如何定義使用

王林
王林轉載
2023-05-03 21:13:051511瀏覽

一、抽象類別

1.什麼叫抽象類?

例如在生活中我們都把狗和貓歸為動物著一類中,但當只說動物時,我們是不知道是貓還是狗還是其他的。所以動物就是所謂的抽象類,貓和狗則是具體的類了。因此在Java中,一個沒有方法體的方法應該定義為抽象類,而類別中有抽象方法,則必須為抽象類別。

2.抽象類別的特點:

  • 抽象類別與抽象方法必須用abstract關鍵字進行修飾。

  • 抽象類別不一定會有抽象方法,而有抽象方法的類別一定是抽象類別。

  • 抽象類別不能實例化,若需實例化,參考多型的形式,透過子類別來進行實例化。

  • 繼承了抽象類別的子類,則需要重寫抽象類別裡面的所有抽象方法,要嘛就是抽象類別才行。

3.成員特徵:

  • 成員變數:可以是變數或常數。

  • 建構方法:有建構方法,但是不能實例化,則需要透過多型子類別來進行;其中用處是為子類別存取父類別來進行資料初始化。

  • 成員方法:可以是抽象類別:限定 子類別必須完成的某些行為;也可以為非抽象類,可以提高程式碼的複用性。

二、介面

1.介面是什麼?

介面是一種公共的規範標準,是表示一個類別所需要的附加條件,所以只需要符合規範標準,都可以運用。 Java中的介面主要體現在對行為的抽象化。

2.介面的特性

  • 需要用關鍵字interface來修飾。

  • 類別的實作介面需要用implements來表示

  • 介面不能實例化,若要實例化,則參考多型的形式來進行實例化,稱為介面多態性。因此多態的形式主要有:具體類別的多態,抽像多態,介面多態。

  • 介面的實作類別:要嘛重寫介面裡面的抽象方法,要嘛是抽象類別。

3.介面的組成成員

  • 1.成員變數:只能是常數,預設由'public static final'來修飾。

  • 2,建構方法:介面沒有建構方法,因為介面主要是對於行為進行抽象,沒有具體的存在。

  • 注意事項:一個類別沒有父類別則預設繼承Object類別。

  • 3.成員方法:

#抽象方法:介面預設的方法為抽象方法。預設為public static abstract來進行修飾。

預設方法:預設方法是在部分實作類別需要加入的方法時所用到的方法,是需要在介面裡面用defaul修飾,實作類別裡可以不用重寫,但重寫時是需要刪除default。

java中的抽象類別和介面如何定義使用

靜態方法:靜態方法是只能在介面中去添加,不能被實作類別去調用,只能被介面名調用並被static修飾。

java中的抽象類別和介面如何定義使用

私有方法:私有方法主要在介面裡面進行使用,有private關鍵字進行修飾,透過將相同的程式碼片段寫在私有方法裡面,提高了程式碼的複用性和簡單性,靜態的私有方法只能用靜態來進行修飾,非靜態的可以有非靜態和靜態方法都能修飾。

java中的抽象類別和介面如何定義使用

4.類別與抽象的關係:

java中的抽象類別和介面如何定義使用

#5.抽象類別與介面的差異:

抽象類別主要是對於事物的抽象,介面主要是對於行為的抽象。

以上是java中的抽象類別和介面如何定義使用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:yisu.com。如有侵權,請聯絡admin@php.cn刪除