首頁 > Java > java教程 > Java中抽象類別和介面的差別是什麼

Java中抽象類別和介面的差別是什麼

青灯夜游
發布: 2018-11-28 09:21:53
原創
4531 人瀏覽過

Java中抽象類別和介面的差別是什麼?本篇文章就跟大家介紹抽象類別和介面的差別。有一定的參考價值,有需要的朋友可以參考一下,希望對你們有幫助。

在java中抽象化類別和介面都是用來實作抽象的,那麼它們之間有什麼差異?在討論抽象類別和介面的差異之前,我們先來看看抽象類別和介面各自的特性是什麼。 【相關影片教學推薦:Java教學

抽象類別

抽象類別是用來捕捉子類別的通用特性,即共同點的;例如:汽車、自行車、電瓶車,它們都是車子,可以有一個共同的抽象類別:Vehicle 。抽象類別不能被實例化,不能用來建立對象,只能用來當子類別的超類別。

介面

介面是抽象方法的集合。如果一個類別實作了某個接口,那麼它就會繼承了這個接口的全部抽象方法。

註:抽象方法是一種特殊的方法,它只有聲明,但沒有具體的實作。

接口只是一種形式,它本身是不能做任何事情;如果想要實現一個接口,那麼就必須確保要實現這個接口裡的所以方法。

抽象類別和介面的區別:

#1、抽象類別可以同時具有抽象和具體方法;而,介面只能有抽象方法,它是抽象方法的集合(從Java 8開始,它也可以有預設和靜態方法)。

2、抽象類別不支援多重繼承,一次只能擴充一個類別或一個抽象類別。介面支援多重繼承,可以一次擴充任意數量的介面。

3、抽象類別可以有final,non-final,static和non-static等變數。介面只有靜態和最終變數。

4、抽象類別可以擴充另一個具體(常規)類別或抽象類別,並實作Java介面(一個或多個)。一個介面只能擴充另一個Java接口,而且介面不能實作抽象類別。

5、在抽象類別中,關鍵字:「abstract」是將方法宣告為抽象的必要項。在介面中,關鍵字:「abstract」是可選的,用於將方法宣告為抽象

7、可以使用關鍵字「extends」來擴充抽象類別。一個介面類別可以使用關鍵字“implements”來實現。

8、Java 抽象類別可以具有受保護和公開抽象方法,可以有類別成員,如private,protected等。預設情況下,Java介面的成員是公共的,介面只能有公共抽象方法。

總結:以上就是這篇文章的全部內容,希望能對大家的學習有所幫助。

以上是Java中抽象類別和介面的差別是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板