• 行为型模式/设计模式


    行为型模式

    涉及算法和对象间职责的分配,以及它们之间的通信方式,刻画了运行时难以跟踪的复杂控制流,它们将你的注意力从控制流转移到对象联系方式上来。

    类行为型模式

    使用继承机制在类间分配行为。
    模板模式(template method)
    一个算法的抽象定义,它逐步定义算法,每一步调用一个抽象操作,子类定义抽象操作的具体实现。

    解释器模式(interpreter)将一个文法表示为一个类层次,并实现一个解释器作为这些类的实力上的一个操作。

    对象行为型模式

    观察者(observer)
    职责链(chain of responsibility)
    命令(command)
    迭代器(iterator)

    备忘录(memento)
    状态(state)
    中介者(mediator)
    访问者(visitor)

    备忘录模式和状态模式(java)

    两个模式都涉及类的状态:

    
    //备忘录
    类中提供creatBackup()和restore(Backup bk)的方法,用于类随时创建备份,并在需要的时候进行restore。Backup类存储备份时,类的一些状态信息。
    
    //状态模式
    将类的状态和此状态的行为,抽象出来,作为状态的承载类。
    public void Context {
     String state;
     public void method1(){}
     public void method2(){}
    }
    
    不同的对象,展现不同的行为。(如qq忙碌、离线等等)
    
    在状态的执行类中,就可以,根据传入不同的Context对象的状态,展现不同的行为了。
    
    public void Mgr(){
    Context c;
    pulic Mgr(Context context){
    c=context;
    }
    public void method(){
     if (c.getValue().equals("state1")) {  
                state.method1();  
            } else if (c.getValue().equals("state2")) {  
                state.method2();  
            }  
    }
    }
    
    
  • 相关阅读:
    npm install报错Error: ENOENT
    hibernate hql
    mysql授权
    撤销git reset soft head操作
    nodejs&npm等概念梳理
    Java类中中文问题
    采用MANIFEST.MF之jar报错ClassNotFoundException解法
    EChart和G2比较
    牛客OI测试赛1
    Codeforces Round #340 (Div.2)
  • 原文地址:https://www.cnblogs.com/lknny/p/5912639.html
Copyright © 2020-2023  润新知