zoukankan      html  css  js  c++  java
  • java:接口实例

    接口:打印机接口

    interface Printer
    {
        public void read();
    }

    函数一:佳能打印机

    class CanPrinter implements Printer
    {
        public void read(){
            System.out.println("Canread");
        };
    }

    函数二:惠普打印机

    class HPPrinter implements Printer
    {
        public void read(){
            System.out.println("HPread");
        };
    }

    主函数:

    class Test
    {
        public static void main(String args[]){
            int flag=0;
            Printer p = null;
            if(flag==0){
                p = new HPPrinter();
            }else{
                p = new CanPrinter();
            }
        
            p.read();
        }
    }

    得出:HPread

    二次整合

    接口、函数一、二不变,增加判断flag的类,方便修改

    class PrinterFactory
    {
        Printer getPrinter(int flag){        //定义类型为Printer
            Printer p = null;
            if(flag==0){
                p = new HPPrinter();
            }else if(flag==1){
                p = new CanPrinter();
            }
            return p;    //返回对象
        }
    }

    主函数:

    class Test
    {
        public static void main(String args[]){
            int flag=0;
            PrinterFactory f = new PrinterFactory();
            Printer printer = f.getPrinter(flag);
            printer.read();
        }
    }
  • 相关阅读:
    深入理解iOS开发中的锁
    整理:iOS开发算法资料
    (二)ELK Filebeat简介
    (一)ELK 部署
    zabbix + grafana 展示
    (二)LVS介绍
    (一)集群介绍
    zabbix 监控 ESXI
    zabbix proxy 安装
    zabbix fping 监控网络质量
  • 原文地址:https://www.cnblogs.com/tinyphp/p/3732941.html
Copyright © 2011-2022 走看看