日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > java >内容正文

java

Java中的钩子方法

發(fā)布時(shí)間:2023/12/10 java 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java中的钩子方法 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

鉤子方法是啥
鉤子顧名思義就是用來(lái)掛東西的。那么要掛東西必須有個(gè)被掛的東西,要不就是鐵環(huán)、要不就是墻的邊沿。所以要能掛住東西必須要有個(gè)被勾住的鐵環(huán),要一個(gè)鉤子。那么在java中也是同樣的原理,你首先需要一個(gè)被掛在的東西,一個(gè)掛載的東西。

鉤子的實(shí)現(xiàn)方法
是對(duì)于抽象方法或者接口中定義的方法的一個(gè)空實(shí)現(xiàn),在實(shí)際中的應(yīng)用,比如說(shuō)有一個(gè)接口,這個(gè)接口里有7個(gè)方法,而你只想用其中一個(gè)方法,那么這時(shí),你可以寫(xiě)一個(gè)抽象類(lèi)實(shí)現(xiàn)這個(gè)接口,在這個(gè)抽象類(lèi)里將你要用的那個(gè)方法設(shè)置為abstract,其它方法進(jìn)行空實(shí)現(xiàn),然后你再繼承這個(gè)抽象類(lèi),就不需要實(shí)現(xiàn)其它不用的方法,這就是鉤子方法的作用。

抽象父類(lèi)

public abstract class AbstractClass {public abstract boolean isOpen();public final void operating() {if(isOpen()) {System.out.println("鉤子方法開(kāi)啟");}else {System.out.println("鉤子方法關(guān)閉");}} }

實(shí)現(xiàn)類(lèi)

public class AchieveClass extends AbstractClass {//鉤子方法能掛在到operating能干預(yù)到operating業(yè)務(wù)邏輯@Overridepublic boolean isOpen() {return true;}public static void main(String[] args) {AchieveClass ac = new AchieveClass();ac.operating();}}

只要重寫(xiě)isOpen就能干預(yù)父類(lèi)方法的業(yè)務(wù)流程。相當(dāng)于將isOpen掛載在了父類(lèi)的operating()中。

總結(jié)

以上是生活随笔為你收集整理的Java中的钩子方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。