最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

Java筆記--接口新特性、代碼塊

2023-09-05 13:12 作者:爪哇島江戶(hù)川  | 我要投稿

一、接口新特性

1、JDK8的新特性:接口中可以定義有方法體的方法。(默認(rèn)、靜態(tài))

假設(shè)我們?cè)陧?xiàng)目中編寫(xiě)了一個(gè)接口,里面編寫(xiě)了一堆抽象方法。然后又編寫(xiě)了接口的兩個(gè)實(shí)現(xiàn)類(lèi),并且重寫(xiě)了里面的方法。

然后項(xiàng)目1.0版本正式上線(xiàn)了

在項(xiàng)目2.0版本,需要對(duì)功能進(jìn)行一些豐富,我們要加入一些新的方法,按照以前,我們要是在接口中編寫(xiě)抽象方法,所有的實(shí)現(xiàn)類(lèi)會(huì)報(bào)錯(cuò),因?yàn)閷?shí)現(xiàn)類(lèi)要對(duì)新編寫(xiě)的抽象方法進(jìn)行重寫(xiě)。如果接口中可以使用帶有邏輯的方法,并且實(shí)現(xiàn)類(lèi)可以直接拿來(lái)用,就可以解決接口升級(jí)的問(wèn)題。

JDK8接口特性:允許在接口中定義非抽象方法,但是需要使用關(guān)鍵字default修飾,這些方法就是默認(rèn)方法。

public是可以省略的,方法的默認(rèn)權(quán)限就是public

假設(shè)我們?cè)诮涌谥芯帉?xiě)了一個(gè)method方法,在實(shí)現(xiàn)類(lèi)中直接輸入方法名敲回車(chē)

方法被重寫(xiě)了,super.調(diào)用的是父類(lèi)的方法,而加上前面的接口名.調(diào)用的是"干爹",而且在實(shí)現(xiàn)類(lèi)中的重寫(xiě)方法,不需要帶default關(guān)鍵字。

如果一個(gè)實(shí)現(xiàn)類(lèi)同時(shí)實(shí)現(xiàn)兩個(gè)接口,而且兩個(gè)接口中的方法名是相同的,我們必須在實(shí)現(xiàn)類(lèi)中將方法重寫(xiě),并且指定用哪個(gè)接口的方法。

接口中也可以編寫(xiě)靜態(tài)方法,直接通過(guò)接口名.進(jìn)行調(diào)用。

2、JDK9的新特性:接口中可以定義私有方法。

接口中的私有方法,實(shí)現(xiàn)類(lèi)不能調(diào)用有什么意義嗎?

在這個(gè)接口中,里面有兩個(gè)抽象方法,還有兩個(gè)默認(rèn)方法,但是這兩個(gè)默認(rèn)方法中有一段邏輯是重復(fù)的,代碼顯得很臃腫。我們可以將重復(fù)代碼抽取出一個(gè)新的方法,但是這個(gè)方法不想讓別人使用,可以加上private,但是不能加default。接口中的私有方法不能帶default。


三、代碼塊

使用{ }括起來(lái)的內(nèi)容就是代碼塊。

分為局部代碼塊、構(gòu)造代碼塊、靜態(tài)代碼塊、同步代碼塊四類(lèi)。

1、局部代碼塊

位置:方法中的一對(duì)大括號(hào)。

作用:限定變量的生命周期,提早的釋放內(nèi)存。

2、構(gòu)造代碼塊

位置:類(lèi)中,方法外。

可以看見(jiàn),在創(chuàng)建對(duì)象,執(zhí)行構(gòu)造方法的時(shí)候,就會(huì)執(zhí)行構(gòu)造代碼塊,優(yōu)先于構(gòu)造方法執(zhí)行。

上面的圖在字節(jié)碼文件中是這樣的:

我們?cè)谠次募械臉?gòu)造代碼塊,在編譯后,會(huì)分散到該類(lèi)的每一個(gè)構(gòu)造方法中,而且還是在構(gòu)造方法的最開(kāi)始的位置存放。

3、靜態(tài)代碼塊

位置:類(lèi)中方法外,需要加入static關(guān)鍵字。

特點(diǎn):隨著類(lèi)的加載而執(zhí)行,因?yàn)轭?lèi)只加載一次,所以它只執(zhí)行一次。

實(shí)例:如果以后我們要賦值的不是基本數(shù)據(jù)類(lèi)型,而是對(duì)象類(lèi)型,就可以用靜態(tài)代碼塊來(lái)賦值。


Java筆記--接口新特性、代碼塊的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
灵台县| 武川县| 阿城市| 云浮市| 莫力| 兰溪市| 藁城市| 且末县| 玉溪市| 乐业县| 原平市| 通化县| 石渠县| 苍南县| 彝良县| 恭城| 黄大仙区| 驻马店市| 玉林市| 紫云| 桓台县| 申扎县| 金堂县| 南木林县| 霍邱县| 泰和县| 麻江县| 兴国县| 邵东县| 共和县| 金秀| 永善县| 广西| 闸北区| 舟曲县| 天台县| 鱼台县| 东辽县| 买车| 新田县| 临海市|