日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 消費(fèi)電子 > 消費(fèi)電子
[導(dǎo)讀]代理模式 組成: 抽象角色:通過接口或抽象類聲明真實(shí)角色實(shí)現(xiàn)的業(yè)務(wù)方法。 代理角色:實(shí)現(xiàn)抽象角色,是真實(shí)角色的代理,通過真實(shí)角色的業(yè)務(wù)邏輯方法來實(shí)現(xiàn)抽象方法,并

代理模式

組成:

抽象角色:通過接口或抽象類聲明真實(shí)角色實(shí)現(xiàn)的業(yè)務(wù)方法。

代理角色:實(shí)現(xiàn)抽象角色,是真實(shí)角色的代理,通過真實(shí)角色的業(yè)務(wù)邏輯方法來實(shí)現(xiàn)抽象方法,并可以附加自己的操作。

真實(shí)角色:實(shí)現(xiàn)抽象角色,定義真實(shí)角色所要實(shí)現(xiàn)的業(yè)務(wù)邏輯,供代理角色調(diào)用。

即Proxy Pattern,23種常用的面向?qū)ο筌浖脑O(shè)計(jì)模式之一。(設(shè)計(jì)模式的說法源自《設(shè)計(jì)模式》一書,原名《Design Patterns: Elements of Reusable Object-Oriented Software》。1995年出版,出版社:Addison Wesly Longman.Inc。該書提出了23種基本設(shè)計(jì)模式,第一次將設(shè)計(jì)模式提升到理論高度,并將之規(guī)范化。)

代理模式的定義:為其他對象提供一種代理以控制對這個(gè)對象的訪問。在某些情況下,一個(gè)對象不適合或者不能直接引用另一個(gè)對象,而代理對象可以在客戶端和目標(biāo)對象之間起到中介的作用。

(1)職責(zé)清晰

真實(shí)的角色就是實(shí)現(xiàn)實(shí)際的業(yè)務(wù)邏輯,不用關(guān)心其他非本職責(zé)的事務(wù),通過后期的代理完成一件完成事務(wù),附帶的結(jié)果就是編程簡潔清晰。

(2)代理對象可以在客戶端和目標(biāo)對象之間起到中介的作用,這樣起到了中介的作用和保護(hù)了目標(biāo)對象的作用。

(3)高擴(kuò)展性

適配器模式

在計(jì)算機(jī)編程中,適配器模式(有時(shí)候也稱包裝樣式或者包裝)將一個(gè)類的接口適配成用戶所期待的。一個(gè)適配允許通常因?yàn)榻涌诓患嫒荻荒茉谝黄鸸ぷ鞯念惞ぷ髟谝黄穑龇ㄊ菍㈩愖约旱慕涌诎谝粋€(gè)已存在的類中。

共有兩類適配器模式:

對象適配器模式

-- 在這種適配器模式中,適配器容納一個(gè)它包裹的類的實(shí)例。在這種情況下,適配器調(diào)用被包裹對象的物理實(shí)體。

類適配器模式

-- 這種適配器模式下,適配器繼承自已實(shí)現(xiàn)的類(一般多重繼承)。

使用的前提:

1.接口中規(guī)定了所有要實(shí)現(xiàn)的方法

2.但一個(gè)要實(shí)現(xiàn)此接口的具體類,只用到了其中的幾個(gè)方法,而其它的方法都是沒有用的。

實(shí)現(xiàn)方法

1.用一個(gè)抽象類實(shí)現(xiàn)已有的接口,并實(shí)現(xiàn)接口中所規(guī)定的所有方法,這些方法的實(shí)現(xiàn)可以都是“平庸”實(shí)現(xiàn)----空方法;但此類中的方法是具體的方法,而不是抽象方法,否則的話,在具體的子類中仍要實(shí)現(xiàn)所有的方法,這就失去了適配器本來的作用。

2.原本要實(shí)現(xiàn)接口的子類,只實(shí)現(xiàn)1中的抽象類即可,并在其內(nèi)部實(shí)現(xiàn)時(shí),只對其感興趣的方法進(jìn)行實(shí)現(xiàn)。

注意事項(xiàng)

1.充當(dāng)適配器角色的類就是:實(shí)現(xiàn)已有接口的抽象類

2.為什么要用抽象類:

此類是不要被實(shí)例化的。而只充當(dāng)適配器的角色,也就為其子類提供了一個(gè)共同的接口,但其子類又可以將精力只集中在其感興趣的地方。

 模式解析

你想使用一個(gè)已經(jīng)存在的適配器模式,而他的接口不符合你的需求。你想創(chuàng)建一個(gè)可以復(fù)用的類,該類可以與其他不相關(guān)的類或不可預(yù)見的類協(xié)同工作。你想使用一些已經(jīng)存在的子類,但是不可能對每一個(gè)都進(jìn)行子類化已一匹配他們的接口,對象適配器可以適配他的父類接口。 適配器如同一個(gè)常見的變壓器,也如同電腦的變壓器和插線板之間的電源連接線,他們雖然都是3相的,但是電腦后面的插孔卻不能直接插到插線板上。

 一簡介

適配器模式:適配器模式(英語:adapter pattern)有時(shí)候也稱包裝樣式或者包裝。將一個(gè)類的接口轉(zhuǎn)接成用戶所期待的。一個(gè)適配使得因接口不兼容而不能在一起工作的類工作在一起,做法是將類別自己的接口包裹在一個(gè)已存在的類中。

代理模式:為其他對象提供一種代理以控制對這個(gè)對象的訪問。在某些情況下,一個(gè)對象不適合或者不能直接引用另一個(gè)對象,而代理對象可以在客戶端和目標(biāo)對象之間起到中介的作用。

二困惑

設(shè)計(jì)模式總是通過增加層來進(jìn)行解耦合,提高擴(kuò)展性,但是如果我們沒法從在這個(gè)抽象維度中看出,這個(gè)層真正的抽象含義,那么我們很難搞懂一個(gè)模式真正的內(nèi)涵?我就有這個(gè)疑問,這兩個(gè)東東都是增加了一層,但是這一層有什么區(qū)別?

三理解

很明顯,適配器模式是因?yàn)樾屡f接口不一致導(dǎo)致出現(xiàn)了客戶端無法得到滿足的問題,但是,由于舊的接口是不能被完全重構(gòu)掉的,因?yàn)槲覀冞€想使用實(shí)現(xiàn)了這個(gè)接口的一些服務(wù)。那么為了使用以前實(shí)現(xiàn)舊接口的服務(wù),我們就應(yīng)該把新的接口轉(zhuǎn)換成舊接口;實(shí)現(xiàn)這個(gè)轉(zhuǎn)換的類就是抽象意義的轉(zhuǎn)換器。

就比如在java中早期的枚舉接口是Enumeraon而后定義的枚舉接口是Iterator;有很多舊的類實(shí)現(xiàn)了enumeraon接口暴露出了一些服務(wù),但是這些服務(wù)我們現(xiàn)在想通過傳入Iterator接口而不是Enumeraon接口來調(diào)用,這時(shí)就需要一個(gè)適配器,那么client就能用這個(gè)服務(wù)了(服務(wù)端只想用Iterator或者只知道這個(gè)接口)。

相比于適配器的應(yīng)用場景,代理就不一樣了,雖然代理也同樣是增加了一層,但是,代理提供的接口和原本的接口是一樣的,代理模式的作用是不把實(shí)現(xiàn)直接暴露給client,而是通過代理這個(gè)層,代理能夠做一些處理。


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢抑制與過流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問題卻十分常見,不僅增加了維護(hù)成本,還影響了用戶體驗(yàn)。要解決這一問題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車場照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉