Java中抽象類(lèi)和接口的區(qū)別_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
接口
1 因?yàn)閖ava不支持多重繼承,所以有了接口,一個(gè)類(lèi)只能繼承一個(gè)父類(lèi),但可以實(shí)現(xiàn)多個(gè)接口,接口本身也可以繼承多個(gè)接口。
2 接口里面的成員變量默認(rèn)都是public static final類(lèi)型的。必須被顯示的初始化。
3 接口里面的方法默認(rèn)都是public abstract類(lèi)型的。隱式聲明。
4 接口沒(méi)有構(gòu)造方法,不能被實(shí)例化。
5 接口不能實(shí)現(xiàn)另一個(gè)接口,但可以繼承多個(gè)接口。
6 類(lèi)如果實(shí)現(xiàn)了一個(gè)接口,那么必須實(shí)現(xiàn)接口里面的所有抽象方法,否則類(lèi)要被定義為抽象類(lèi)。
抽象類(lèi)
1 如果將一個(gè)類(lèi)聲明為abstract,此類(lèi)不能生成對(duì)象,只能被繼承使用。
2 抽象方法必須存在于抽象類(lèi)中。
3 抽象類(lèi)中可以有一般的變量和一般的方法。
4 子類(lèi)繼承抽象類(lèi)必須實(shí)現(xiàn)其中抽象方法,除非子類(lèi)為抽象類(lèi)。
private void print(){};此語(yǔ)句表示方法的空實(shí)現(xiàn)。
abstract void print(); 此語(yǔ)句表示方法的抽象,無(wú)實(shí)現(xiàn)。
接口和抽象類(lèi)的區(qū)別
1 接口只能包含抽象方法,抽象類(lèi)可以包含普通方法。
2 接口只能定義靜態(tài)常量屬性,抽象類(lèi)既可以定義普通屬性,也可以定義靜態(tài)常量屬性。
3 接口不包含構(gòu)造方法,抽象類(lèi)里可以包含構(gòu)造方法。
抽象類(lèi)不能被實(shí)例化,但不代表它不可以有構(gòu)造函數(shù),抽象類(lèi)可以有構(gòu)造函數(shù),備繼承類(lèi)擴(kuò)充.
以上所述是小編給大家介紹的Java中抽象類(lèi)和接口的區(qū)別_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
從最基本的Java工程搭建SpringMVC+SpringDataJPA+Hibernate
本文會(huì)介紹從一個(gè)最基本的java工程,到Web工程,到集成Spring、SpringMVC、SpringDataJPA+Hibernate,本文介紹的非常詳細(xì),具有參考借鑒價(jià)值,感興趣的朋友一起學(xué)習(xí)吧2016-05-05
java使用wait()和notify()線程間通訊的實(shí)現(xiàn)
Java 線程通信是將多個(gè)獨(dú)立的線程個(gè)體進(jìn)行關(guān)聯(lián)處理,使得線程與線程之間能進(jìn)行相互通信,本文就介紹了java使用wait()和notify()線程間通訊的實(shí)現(xiàn),感興趣的可以了解一下2023-09-09
深入探討Java?SPI機(jī)制及其應(yīng)用場(chǎng)景
本文深入介紹了Java?SPI機(jī)制的原理和實(shí)現(xiàn)方式,以及在Java中如何使用SPI實(shí)現(xiàn)可插拔的組件化架構(gòu),包括示例代碼和應(yīng)用場(chǎng)景分析,幫助讀者更好地理解和應(yīng)用該機(jī)制2023-04-04
MyBatis實(shí)戰(zhàn)之Mapper注解的示例
本文主要介紹了MyBatis實(shí)戰(zhàn)之Mapper注解的示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-10-10
SpringBoot+?Sharding?Sphere?輕松實(shí)現(xiàn)數(shù)據(jù)庫(kù)字段加解密功能
在Spring?Boot生態(tài)中,有一個(gè)非常厲害的開(kāi)源框架:Apache?ShardingSphere,它是一款分布式?SQL?事務(wù)和查詢引擎,可通過(guò)數(shù)據(jù)分片、彈性伸縮、加密等能力對(duì)任意數(shù)據(jù)庫(kù)進(jìn)行增強(qiáng),今天通過(guò)這篇文章,我們一起來(lái)了解一下如何在?Spring?Boot?中快速實(shí)現(xiàn)數(shù)據(jù)的加解密功能2024-07-07

