public interface InkBox {
public String getColor();
}
public class ColorBox implements InkBox {
@Override
public String getColor() {
return "黑白";
}
}
public class GrayBox implements InkBox {
@Override
public String getColor() {
return "彩色";
}
}
public interface Paper {
public String getPaperSize();
}
public class A4 implements Paper{
@Override
public String getPaperSize() {
return "A4";
}
}
public class B5 implements Paper{
@Override
public String getPaperSize() {
return "B5";
}
}
public class PrinterTest {
public static void main(String[] args) {
InkBox colorBox = new ColorBox();
// Paper A4 = new A4();
// Printer printer = new Printer();
// printer.print(colorBox,A4);
//
//
// InkBox GrayBox = new GrayBox();
// Paper B5 = new B5();
// printer.print(GrayBox,B5);
Paper A4 = new B5();
Printer printer = new Printer();
printer.print(colorBox,A4);
InkBox GrayBox = new GrayBox();
Paper B5 = new A4();
printer.print(GrayBox,B5);
}
}
运行结果:



