java中代理和裝飾者模式有什么區(qū)別?相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。
成都創(chuàng)新互聯(lián)是專(zhuān)業(yè)的故城網(wǎng)站建設(shè)公司,故城接單;提供做網(wǎng)站、成都做網(wǎng)站,網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專(zhuān)業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行故城網(wǎng)站開(kāi)發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專(zhuān)業(yè)做搜索引擎喜愛(ài)的網(wǎng)站,專(zhuān)業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來(lái)合作!
Java的基本數(shù)據(jù)類(lèi)型分為:1、整數(shù)類(lèi)型,用來(lái)表示整數(shù)的數(shù)據(jù)類(lèi)型。2、浮點(diǎn)類(lèi)型,用來(lái)表示小數(shù)的數(shù)據(jù)類(lèi)型。3、字符類(lèi)型,字符類(lèi)型的關(guān)鍵字是“char”。4、布爾類(lèi)型,是表示邏輯值的基本數(shù)據(jù)類(lèi)型。
1、相同點(diǎn)
都要實(shí)現(xiàn)與目標(biāo)類(lèi)相同的業(yè)務(wù)接口
在兩個(gè)類(lèi)中都要聲明目標(biāo)對(duì)象
都可以在不修改目標(biāo)類(lèi)的前提下增強(qiáng)目標(biāo)方法
2、不同點(diǎn)
目的不同:裝飾者是為了增強(qiáng)目標(biāo)對(duì)象 靜態(tài)代理是為了保護(hù)和隱藏目標(biāo)對(duì)象
獲取目標(biāo)對(duì)象構(gòu)建的地方不同 裝飾者是由外界傳遞進(jìn)來(lái),可以通過(guò)構(gòu)造方法傳遞 靜態(tài)代理 是在代理類(lèi)內(nèi)部創(chuàng)建,以此來(lái)隱藏目標(biāo)對(duì)象
拓展裝飾者場(chǎng)景:
當(dāng)不能采用繼承的方式對(duì)系統(tǒng)進(jìn)行擴(kuò)充或者采用繼承不利于系統(tǒng)擴(kuò)展和維護(hù)時(shí)。不能采用繼承的情況主要有兩類(lèi):
第一類(lèi)是系統(tǒng)中存在大量獨(dú)立的擴(kuò)展,為支持每一種組合將產(chǎn)生大量的子類(lèi),使得子類(lèi)數(shù)目 呈爆炸性增長(zhǎng);
第二類(lèi)是因?yàn)轭?lèi)定義不能繼承(如final類(lèi))
在不影響其他對(duì)象的情況下,以動(dòng)態(tài)、透明的方式給單個(gè)對(duì)象添加職責(zé)。
當(dāng)對(duì)象的功能要求可以動(dòng)態(tài)地添加,也可以再動(dòng)態(tài)地撤銷(xiāo)時(shí)。
看完上述內(nèi)容,你們掌握java中代理和裝飾者模式有什么區(qū)別的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!