欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

為什么策略模式叫做策略模式

系統 1842 0

? 我想我瘋了。。。跑到網吧來寫代碼。。。。。

? 昨天看了《Head First 設計模式》剛看了第一章,感覺收獲很大,至少我知道什么是策略模式。。。但是到昨天看完之后我還是不了解為什么叫做策略模式。。。后來在廁所里想了下。。。。。。。今天就跑到網吧把我的想法寫出來了。。。放清明,電腦還在學校(悲劇的臺式機)

戰將類--小說《修真世界》中戰將就使用策略的高手,將使用的策略的具體實現交給Strategy類去實現,就把變化的部分的分離開了。

?

    package com.wjh.celue;

public class Fights {
	//策略實例變量
   	Strategy myStrategy;
	public Fights(Strategy strategy)
	{
		//初始化
		this.myStrategy = strategy;
	}
	//設置策略
	public void SetStrategy(Strategy strategy)
	{
		this.myStrategy = strategy;
	}
	//使用策略
	public void useStrategy()
	{
		myStrategy.use();
	}

}
  

?策略類---策略的總父類,其子類必須實現其use方法,所有的具有相互替換性

    package com.wjh.celue;
/**
 * 策略的抽象類,策略的子類必須實現use方法
 * @author Administrator
 *
 */
public abstract class Strategy {
	public abstract void use();

}

  

?空城計--策略的子類,實現了use方法.

    package com.wjh.celue;

import static com.wjh.print.MyPrint.*;
//繼承策略類
public class KongChengJi extends Strategy{

	@Override
	public void use() {
		// TODO Auto-generated method stub
		println("使用空城記");	
	}

}
  

?

美人計--策略的子類,同樣實現了use方法.

    package com.wjh.celue;

import static com.wjh.print.MyPrint.*;
/**
 * 策略類的子類,實現use方法
 * @author Administrator
 *
 */
public class MeiRenJi extends Strategy{

	@Override
	public void use() {
		// TODO Auto-generated method stub
		println("使用美人計");
	}

}
  

?主類---創建戰將類實例小娘(在<<修真世界>>中,小娘是一個戰將),他會使用各種策略.

創建各種策略對象,并讓小娘使用.

因為他們都繼承于策略類,在多態的神奇效果下,他們都調用他們本身的use方法.

    package com.wjh.main;

import com.wjh.celue.Fights;
import com.wjh.celue.KongChengJi;
import com.wjh.celue.MeiRenJi;

public class MainUi {
	public static void main(String[] args)
	{
		//創建戰將類對象小娘
		Fights xiaoLiang = new Fights(new KongChengJi());
		//小娘使用策略
		xiaoLiang.useStrategy();
		//小娘換策略
		xiaoLiang.SetStrategy(new MeiRenJi());
		//小娘使用策略
		xiaoLiang.useStrategy();
	}

}
  

?總結...雖然小娘并不會使用空城計和美人計,但是通過這個例子,我更了解為什么策略模式叫做策略模式...

?

策略模式的定義:策略模式定義了一系列的算法,并將每一個算法封裝起來,而且使它們還可以相互替換。策略模式讓算法獨立于使用它的客戶而獨立變化(來自百度百科)

?

但我自己覺得那些算法就是一個個的策略(或許他們本來就是一樣的),用于解決各種問題.

而因為計劃永遠趕不上變化,所以我們把變化拿出來,整成一個方法集(例如:36計).在實施(打仗)的時候,

我們根據需要去使用相應的方法(策略),這就達到了一種以不變應萬變的效果...

?

?

備注:以上內容都是我自己在學習過程中的想法,或許是錯的,請大家告訴我......謝謝...

為什么策略模式叫做策略模式


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 欧美大码毛片在线播放 | 色偷偷噜噜噜亚洲男人 | 久久6699精品国产人妻 | 一级香蕉免费毛片 | 日韩欧美国产精品第一页不卡 | 久久久久久国产精品 | 爱爱视频在线观看 | 男女拍拍拍无挡免费视频 | 久久免费看少妇高潮A片JA | 日韩精品福利视频一区二区三区 | 精品久久久久久久中文字幕 | 天天干天天射天天操 | 国产日韩一区二区三区在线观看 | 日韩在线视频在线 | 91久久久久久久久 | 看免费5xxaaa毛片 | 成人午夜爽爽爽免费视频 | 日韩精品不卡 | 秋霞久久国产精品电影院 | 特级丰满少妇一级aaaa爱毛片 | av黄色在线 | 精品久久久久久久久久 | 久久久精品久久视频只有精品 | 黄色网址在线视频 | 亚洲色婷婷久久精品AV蜜桃久久 | 国产精品资源网站在线观看 | 国产福利在线观看永久免费 | 中文字幕三区 | 99热久久国产综合精品久久国产 | 自偷自拍三级全三级视频 | 国产精品久久久久无码人妻 | 欧美色性 | 日韩a级片 | 麻豆一区二区99久久久久 | 99r精品在线 | 国产专区在线播放 | 日本天堂网址 | 国产一区二区欧美丝袜 | 精品欧美乱码久久久久久1区2区 | 亚洲国产精品久久人人爱 | 国产成人综合网 |