Java 抽象類別與介面的差異是什麼?
抽象類別:在Java中被abstract關鍵字修飾的類別稱為抽象類,被abstract關鍵字修飾的方法稱為抽象方法,抽象方法只有方法的聲明,沒有方法體。抽象類別的特點:
1、抽象類別不能被實例化只能被繼承;
2、包含抽象方法的一定是抽象類,但是抽象類別不一定含有抽象方法;
3、抽象類別中的抽象方法的修飾符只能為public或protected,預設為public;
4、一個子類別繼承一個抽象類,則子類別必須實作父類別抽象方法,否則子類別也必須定義為抽象類別;
5、抽象類別可以包含屬性、方法、建構方法,但是建構方法不能用於實例化,主要用途是被子類別呼叫。
介面:Java中介面使用interface關鍵字修飾,特點為:
1、介面可以包含變數、方法;變數被隱士指定為public static final,方法被隱士指定為public abstract(JDK1.8之前);
2、介面支援多重繼承,即一個介面可以extends多個接口,間接的解決了Java中類別的單繼承問題;
3、一個類別可以實作多個介面;
4、JDK1.8中對介面增加了新的特性:
預設方法(default method):JDK 1.8允許給介面添加非抽象的方法實現,但必須使用default關鍵字修飾;定義了default的方法可以不被實現子類別所實現,但只能被實現子類別的物件呼叫;如果子類別實作了多個接口,並且這些介麵包含相同的預設方法,則子類別必須重寫預設方法;
靜態方法(static method):JDK 1.8中允許使用static關鍵字修飾一個方法,並提供實現,稱為介面靜態方法。介面靜態方法只能透過介面呼叫(介面名.靜態方法名)。
推薦教學:《PHP教學》
以上是Java 抽象類別與介面的差別是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

Dreamweaver CS6
視覺化網頁開發工具

WebStorm Mac版
好用的JavaScript開發工具

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

記事本++7.3.1
好用且免費的程式碼編輯器