zoukankan      html  css  js  c++  java
  • 设计模式之适配器设计

    /*
    设计模式之适配器设计
    适配器设置是在一个java程序中一个类如果要实现一个借口,则必须要
    实现接口中所有的抽象方法,如果对此以一个借口中的抽象方法过多
    ,但是子类中又用不到那么多的抽象方法,则用起来肯定很麻烦,此时
    需要一个中间过渡,但是过渡类又不想直接被使用,所有此时被定为抽
    象类最合适,即一个接口首先被一个抽象类所实现(此抽象类通常被称为
    适配器类),并在此抽象类中实现接口的若干方法(方法体为空),则以后
    的子类直接继承此抽象类,可以有选择的覆写抽象方法
    */
    interface Window{//Window窗口接口
        public void open();//打开窗口
        public void close();//关上窗口
        public void activated();//活动窗户
        public void iconifaced();//窗口最小化
    }
    //为了不让被直接使用所以定义为抽象类
    //抽象类实现窗口接口将接口方法实现,方法体为空
    abstract class AdapterWindow implements Window{
        public void open(){}//实现打开窗口
        public void close(){}//实现关上窗口
        public void activated(){}//实现活动窗户
        public void iconifaced(){}//实现窗口最小化        
    }
    //子类直接继承AdapterWindow类 可以有选择的重写父类方法
    class TestWindow extends AdapterWindow{
        public void open(){
            System.out.println("打开窗口");
        }//重写打开窗口
        public void close(){
            System.out.println("关上窗口");
        }//重写实现关上窗口
    }
    public class Test{
        public static void main(String[] args){
            Window w = new TestWindow();
            w.open();
            w.close();
        }
    }
    以粮为纲全面发展
  • 相关阅读:
    mysqld_safe — MySQL Server Startup Script
    运行python出错:-bash: ./test.py: /usr/bin/python^M: bad interpreter: No such file or directory
    php set_error_handler
    linux chattr命令与php的配置文件.user.ini
    php memcache扩展
    GoLang之strings、buffers、bytes、binary包
    Solidity 编程实例--Blind Auction 盲拍
    Solidity 编程实例--简单的公开拍卖
    Solidity 编程实例--投票
    建立自己的数字货币
  • 原文地址:https://www.cnblogs.com/alexliuf/p/13263761.html
Copyright © 2011-2022 走看看