zoukankan      html  css  js  c++  java
  • 打印机

    打印机类

     1 package cn.print;
     2 //打印机类
     3 public class Printer {
     4         private Ink ink;
     5         private Paper paper;
     6         public void print() {
     7             System.out.println("正在使用"+ink.getClours()+"的墨盒在"+paper.getSize()+"纸上打印信息");
     8         }
     9         
    10         public Ink getInk() {
    11             return ink;
    12         }
    13         public void setInk(Ink ink) {
    14             this.ink = ink;
    15         }
    16         public Paper getPaper() {
    17             return paper;
    18         }
    19         public void setPaper(Paper paper) {
    20             this.paper = paper;
    21         }
    22 }

    墨盒接口

    1 package cn.print;
    2 
    3 public interface Ink {
    4     public  String getClours();
    5 }

    彩色类

    1 package cn.print;
    2 
    3 public class ClourInk implements Ink {
    4     public String getClours() {
    5         return "彩色";
    6     }
    7 }

    黑白类

    1 package cn.print;
    2 
    3 public class GrayInk implements Ink {
    4         public String getClours() {
    5             return "灰色";
    6         }
    7 }

    纸接口

    1 package cn.print;
    2 
    3 public interface Paper {
    4     public String getSize();
    5 }

    A4类

    1 package cn.print;
    2 
    3 public class A4Paper implements Paper{
    4         public String getSize() {
    5             return "A4";
    6         }
    7 }

    B5类

    1 package cn.print;
    2 
    3 public class B5Paper implements Paper {
    4         public String getSize() {
    5             return "B5";
    6         }
    7 }

    测试类

     1 package cn.print;
     2 
     3 public class Test {
     4         public static void main(String[] args) {
     5             Printer printer = new Printer();
     6             Paper paper = new A4Paper();
     7             Ink ink =  new ClourInk();
     8             printer.setInk(ink);
     9             printer.setPaper(paper);
    10             printer.print();
    11         }
    12 }

  • 相关阅读:
    WCF 连接数
    职责链(Chain of Responsibility)模式
    軟件需求分析說明書模板
    C++指針淺析(1)
    ORACLE NOCOPY的用法
    解释器模式(Interpreter Pattern)
    不用嵌套SQL,排序後取第一行值
    Java SE/EE剖析工具JProfiler 7发布了:探针、线程和堆检查
    三款Json查看小工具
    用Data Factory准备性能测试数据
  • 原文地址:https://www.cnblogs.com/lev1/p/11217953.html
Copyright © 2011-2022 走看看