国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

Head First_設(shè)計模式_策略模式

2019-11-11 07:16:02
字體:
供稿:網(wǎng)友
package Strategy_Pattern;/* * head first 設(shè)計模式  完整代碼練習 *  * 1.策略模式(封裝算法,讓算法之間可以相互代替。<好處:使得算法的變化獨立于使用算法的客戶。>) *  *  * */public abstract class Strategy_Pattern_Duck {	FlyBehaver flyBehaver;	EatDifference eatDifference;	// 習慣寫空的構(gòu)造方法	public Strategy_Pattern_Duck() {	};	// 用接口來實現(xiàn)具體的算法	public void flyPerform() {		flyBehaver.fly();	}	public void eatPerform() {		eatDifference.eat();	}}
package Strategy_Pattern;interface FlyBehaver {	// 飛行的方法	void fly();}class FlywhitB implements FlyBehaver {	@Override	public void fly() {		// TODO Auto-generated method stub		System.out.PRintln("FlywhitB");	}}class FlywhitA implements FlyBehaver {	@Override	public void fly() {		// TODO Auto-generated method stub		System.out.println("FlywhitA ");	}}
package Strategy_Pattern;public interface EatDifference {	void eat();}class EatApple implements EatDifference {	@Override	public void eat() {		// TODO Auto-generated method stub		System.out.println("this is duck eatting Apple!");	}}class EatBanana implements EatDifference {	@Override	public void eat() {		// TODO Auto-generated method stub		System.out.println("this is duck eatting banana!");	}}
package Strategy_Pattern;public class WhiteDuck extends Strategy_Pattern_Duck {	public WhiteDuck() {		// 具體的whiteDuck有具體的eat和fly的方法		flyBehaver = new FlywhitB();		eatDifference = new EatApple();	}	public void sayHello() {		System.out.println("這是WhiteDuck!");	}}
package Strategy_Pattern;public class Test {	public static void main(String arg[]) {		Strategy_Pattern_Duck d = new WhiteDuck();		d.eatPerform();		d.flyPerform();		((WhiteDuck) d).sayHello();	}}


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 沂源县| 福贡县| 平武县| 内丘县| 固安县| 嘉荫县| 新巴尔虎左旗| 英吉沙县| 罗平县| 花莲市| 辽阳市| 兰考县| 定兴县| 黔东| 娄烦县| 会昌县| 鄢陵县| 威宁| 平乡县| 景洪市| 晴隆县| 淳安县| 灵寿县| 鄂州市| 神池县| 铁岭县| 睢宁县| 隆回县| 荔波县| 榆林市| 恭城| 潞西市| 武城县| 遂昌县| 赤城县| 景泰县| 广宁县| 上饶市| 武义县| 望奎县| 当涂县|