freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

java與設(shè)計(jì)模式-資料下載頁(yè)

2025-01-13 16:07本頁(yè)面
  

【正文】 許一個(gè)對(duì)象在其內(nèi)部狀態(tài)改變的時(shí)候改變行為。這個(gè)對(duì)象看上去象是改變了它的類(lèi)一樣。狀態(tài)模式把所研究的對(duì)象的行為包裝在不同的狀態(tài)對(duì)象里,每一個(gè)狀態(tài)對(duì)象都屬于一個(gè)抽象狀態(tài)類(lèi)的一個(gè)子類(lèi)。 ? 狀態(tài)模式的意圖是讓一個(gè)對(duì)象在其內(nèi)部狀態(tài)改變的時(shí)候,其行為也隨之改變。狀態(tài)模式需要對(duì)每一個(gè)系統(tǒng)可能取得的狀態(tài)創(chuàng)立一個(gè)狀態(tài)類(lèi)的子類(lèi)。當(dāng)系統(tǒng)的狀態(tài)變化時(shí),系統(tǒng)便改變所選的子類(lèi)。 設(shè)計(jì)模式之 OBSERVER 觀察者模式 ?跟 MM交往時(shí),一定要注意她的狀態(tài)哦,在不同的狀態(tài)時(shí)她的行為會(huì)有不同,比如你約她今天晚上去看電影,對(duì)你沒(méi)興趣的 MM就會(huì)說(shuō)“有事情啦”,對(duì)你不討厭但還沒(méi)喜歡上的 MM就會(huì)說(shuō)“好啊,不過(guò)可以帶上我同事么?”,已經(jīng)喜歡上你的 MM就會(huì)說(shuō)“幾點(diǎn)鐘?看完電影再去泡吧怎么樣?”,當(dāng)然你看電影過(guò)程中表現(xiàn)良好的話,也可以把 MM的狀態(tài)從不討厭不喜歡變成喜歡哦。 設(shè)計(jì)模式之 OBSERVER 觀察者模式 ? public class BlueState extends State{ ? public void handlepush(Context c){ //根據(jù) push方法 如果是 blue狀態(tài)的切換到 green 。 (new GreenState())。 ? } public void handlepull(Context c){ ? //根據(jù) pull方法 如果是 blue狀態(tài)的切換到 red 。 (new RedState())。 ? } ? public abstract void getcolor(){ return ()} ? } ? public class Context{ ? private Sate state=null。 //我們將原來(lái)的 Color state 改成了新建的 State state。 ? //setState是用來(lái)改變 state的狀態(tài) 使用 setState實(shí)現(xiàn)狀態(tài)的切換 pulic void setState(State state){ =state。 ? } ? public void push(){ ? //狀態(tài)的切換的細(xì)節(jié)部分 ,在本例中是顔色的變化 ,已經(jīng)封裝在子類(lèi)別的 handlepush中實(shí)現(xiàn) ,這裏無(wú)需關(guān)心 (this)。 //因爲(wèi) sample要使用 state中的一個(gè)切換結(jié)果 ,使用 getColor() Sample sample=new Sample(())。 ()。 ? } ? ? public void pull(){ ? (this)。 Sample2 sample2=new Sample2(())。 ()。 ? } ? } 設(shè)計(jì)模式之 STRATEGY策略模式 ?策略模式針對(duì)一組算法,將每一個(gè)算法封裝到具有共同接口的獨(dú)立的類(lèi)中,從而使得它們可以相互替換。策略模式使得算法可以在不影響到客戶端的情況下發(fā)生變化。策略模式把行為和環(huán)境分開(kāi)。環(huán)境類(lèi)負(fù)責(zé)維持和查詢(xún)行為類(lèi),各種算法在具體的策略類(lèi)中提供。由于算法和環(huán)境獨(dú)立開(kāi)來(lái),算法的增減,修改都不會(huì)影響到環(huán)境和客戶端。 設(shè)計(jì)模式之 STRATEGY策略模式 ?跟不同類(lèi)型的 MM約會(huì),要用不同的策略,有的請(qǐng)電影比較好,有的則去吃小吃效果不錯(cuò),有的去海邊浪漫最合適,單目的都是為了得到 MM的芳心,我的追 MM錦囊中有好多 Strategy哦。 設(shè)計(jì)模式之 STRATEGY策略模式 ? public abstract class RepTempRule{ protected String oldString=。 public void setOldString(String oldString){ =oldString。 } protected String newString=。 public String getNewString(){ return newString。 } public abstract void replace() throws Exception。 } ? public class test{ ...... ? public void testReplace(){ //使用第一套方案進(jìn)行替換。 RepTempRule rule=new RepTempRuleOne()。 (record)。 ()。 }..... ? } 設(shè)計(jì)模式之 TEMPLATE METHOD模板方法模式 ?模板方法模式準(zhǔn)備一個(gè)抽象類(lèi),將部分邏輯以具體方法以及具體構(gòu)造子的形式實(shí)現(xiàn),然后聲明一些抽象方法來(lái)迫使子類(lèi)實(shí)現(xiàn)剩余的邏輯。不同的子類(lèi)可以以不同的方式實(shí)現(xiàn)這些抽象方法,從而對(duì)剩余的邏輯有不同的實(shí)現(xiàn)。先制定一個(gè)頂級(jí)邏輯框架,而將邏輯的細(xì)節(jié)留給具體的子類(lèi)去實(shí)現(xiàn)。 設(shè)計(jì)模式之 TEMPLATE METHOD模板方法模式 ?追 MM圣經(jīng)規(guī)定了追 MM在不同時(shí)期有不同的步驟 (Template method),但每個(gè)步驟針對(duì)不同的情況,都有不一樣的做法,這就要看你隨機(jī)應(yīng)變啦 (具體實(shí)現(xiàn) ); 設(shè)計(jì)模式之 TEMPLATE METHOD模板方法模式 ? public abstract class Benchmark { /** * 下面操作是我們希望在子類(lèi)別中完成 */ public abstract void benchmark()。 /** * 重復(fù)執(zhí)行 benchmark次數(shù) */ public final long repeat (int count) { if (count = 0) return 0。 else { long startTime = ()。 for (int i = 0。 i count。 i++) benchmark()。 long stopTime = ()。 return stopTime startTime。 } } } ? public class MethodBenchmark extends Benchmark { /** * 真正定義 benchmark內(nèi)容 */ public void benchmark() { for (int i = 0。 i 。 i++){ (i=+i)。 } } } 設(shè)計(jì)模式之 VISITOR 訪問(wèn)者模式 ? 訪問(wèn)者模式的目的是封裝一些施加于某種數(shù)據(jù)結(jié)構(gòu)元素之上的操作。一旦這些操作需要修改的話,接受這個(gè)操作的數(shù)據(jù)結(jié)構(gòu)可以保持不變。訪問(wèn)者模式適用于數(shù)據(jù)結(jié)構(gòu)相對(duì)未定的系統(tǒng),它把數(shù)據(jù)結(jié)構(gòu)和作用于結(jié)構(gòu)上的操作之間的耦合解脫開(kāi),使得操作集合可以相對(duì)自由的演化。訪問(wèn)者模式使得增加新的操作變的很容易,就是增加一個(gè)新的訪問(wèn)者類(lèi)。訪問(wèn)者模式將有關(guān)的行為集中到一個(gè)訪問(wèn)者對(duì)象中,而不是分散到一個(gè)個(gè)的節(jié)點(diǎn)類(lèi)中。當(dāng)使用訪問(wèn)者模式時(shí),要將盡可能多的對(duì)象瀏覽邏輯放在訪問(wèn)者類(lèi)中,而不是放到它的子類(lèi)中。訪問(wèn)者模式可以跨過(guò)幾個(gè)類(lèi)的等級(jí)結(jié)構(gòu)訪問(wèn)屬于不同的等級(jí)結(jié)構(gòu)的成員類(lèi)。 設(shè)計(jì)模式之 VISITOR 訪問(wèn)者模式 ?情人節(jié)到了,要給每個(gè) MM送一束鮮花和一張卡片,可是每個(gè) MM送的花都要針對(duì)她個(gè)人的特點(diǎn),每張卡片也要根據(jù)個(gè)人的特點(diǎn)來(lái)挑,我一個(gè)人哪搞得清楚,還是找花店老板和禮品店老板做一下 Visitor,讓花店老板根據(jù) MM的特點(diǎn)選一束花,讓禮品店老板也根據(jù)每個(gè)人特點(diǎn)選一張卡,這樣就輕松多了; 設(shè)計(jì)模式之 VISITOR 訪問(wèn)者模式 ? public interface Visitable { public void accept(Visitor visitor)。 } ? public class ConcreteVisitor implements Visitor { //在本方法中 ,我們實(shí)現(xiàn)了對(duì) Collection的元素的成功訪問(wèn) public void visitCollection(Collection collection) { Iterator iterator = () while (()) { Object o = ()。 if (o instanceof Visitable) ((Visitable)o).accept(this)。 } public void visitString(String string) { (39。+string+39。)。 } ? public void visitFloat(Float float) { (()+f)。 } } 演講完畢,謝謝觀看!
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1