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");
    };
}

主函数:

java:接口实例
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();
    }
}
java:接口实例

得出:HPread

 

二次整合

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

java:接口实例
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;    //返回对象
    }
}
java:接口实例

主函数:

java:接口实例
class Test
{
    public static void main(String args[]){
        int flag=0;
        PrinterFactory f = new PrinterFactory();
        Printer printer = f.getPrinter(flag);
        printer.read();
    }
}
java:接口实例

java:接口实例,布布扣,bubuko.com

java:接口实例

上一篇:Java List&Map简单初始化方法


下一篇:Java 静态代码块执行顺序