⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ducksimulator.java

📁 深入浅出设计模式
💻 JAVA
字号:
package headfirst.combining.composite;public class DuckSimulator {	public static void main(String[] args) {		DuckSimulator simulator = new DuckSimulator();		AbstractDuckFactory duckFactory = new CountingDuckFactory(); 		simulator.simulate(duckFactory);	} 	void simulate(AbstractDuckFactory duckFactory) {		Quackable redheadDuck = duckFactory.createRedheadDuck();		Quackable duckCall = duckFactory.createDuckCall();		Quackable rubberDuck = duckFactory.createRubberDuck();		Quackable gooseDuck = new GooseAdapter(new Goose());		System.out.println("\nDuck Simulator: With Composite - Flocks");		Flock flockOfDucks = new Flock();		flockOfDucks.add(redheadDuck);		flockOfDucks.add(duckCall);		flockOfDucks.add(rubberDuck);		flockOfDucks.add(gooseDuck);		Flock flockOfMallards = new Flock();		Quackable mallardOne = duckFactory.createMallardDuck();		Quackable mallardTwo = duckFactory.createMallardDuck();		Quackable mallardThree = duckFactory.createMallardDuck();		Quackable mallardFour = duckFactory.createMallardDuck();		flockOfMallards.add(mallardOne);		flockOfMallards.add(mallardTwo);		flockOfMallards.add(mallardThree);		flockOfMallards.add(mallardFour);		flockOfDucks.add(flockOfMallards);		System.out.println("\nDuck Simulator: Whole Flock Simulation");		simulate(flockOfDucks);		System.out.println("\nDuck Simulator: Mallard Flock Simulation");		simulate(flockOfMallards);		System.out.println("\nThe ducks quacked " + 		                   QuackCounter.getQuacks() + 		                   " times");	}	void simulate(Quackable duck) {		duck.quack();	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -