Java模拟组装打印机


这是一个用Java语言写的控制台小程序,主要功能是负责组装打印机。

打印机的主要模块有:墨盒(黑白/彩色)和纸张(A4/B5),其他功能都暂且省略,下面要实现组装一个打印机,需要用尽可能少的代码修改量实现多种打印需求,比如要打印黑白A4的,或者彩色B5的等等。这里就有4种组合。

代码实现如下:

public class MainPrinter {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		ShowPrinter sp = new ShowPrinter();
		sp.show(new Heibai(), new PaperA4());
		sp.show(new Heibai(), new PaperB5());
		sp.show(new Caise(), new PaperA4());
		sp.show(new Caise(), new PaperB5());
	}
}
public class ShowPrinter {
	// 负责组建打印机
	public void show(Mohe mh, Zhizhang zz) {
		System.out.print("打印机配置为:");
		mh.color();
		zz.size();
		System.out.println();
	}
}
public interface Mohe {
	public void color();// 墨盒颜色
}
public class Heibai implements Mohe {

	@Override
	public void color() {
		// TODO Auto-generated method stub
		System.out.print("黑白墨盒");
	}
}
public class Caise implements Mohe {

	@Override
	public void color() {
		// TODO Auto-generated method stub
		System.out.print("彩色墨盒");
	}
}

public interface Zhizhang {
	public void size();// 纸张大小
}
public class PaperA4 implements Zhizhang {

	@Override
	public void size() {
		// TODO Auto-generated method stub
		System.out.println("A4纸");
	}
}

public class PaperB5 implements Zhizhang {

	@Override
	public void size() {
		// TODO Auto-generated method stub
		System.out.println("B5纸");
	}
}

发表评论