美文网首页
Java设计模式--状态模式

Java设计模式--状态模式

作者: 留给时光吧 | 来源:发表于2018-05-12 20:59 被阅读0次

和策略模式很类似,只不过策略模式是通过替换的方式改变类的功能,状态模式则是通过改变类的状态修改类的功能。简单实现

状态接口

interface State {
    void next();
    void pre();
}

具体状态:

public class PowerOnState implements State{
    @Override
    public void next() {
        System.out.println("上一个...");
    }

    @Override
    public void pre() {
        System.out.println("下一个...");
    }


}

 */
public class PowerOffState implements State{

    @Override
    public void next() {

    }

    @Override
    public void pre() {

    }


}

环境类(对外提供接口并保存状态)

public class Player {
    private State state;

    public void setState(State state) {
        this.state = state;
    }

    public void next() {
        state.next();
    }

    public void pre() {
        state.pre();
    }

    public void powerOff() {
        state = new PowerOffState();
        System.out.println("关机了");
    }

    public void powerOn() {
        state = new PowerOnState();
        System.out.println("开机了");
    }
}

测试类


    public static void main(String[] args) {
        Player player = new Player();
        player.powerOn();
        player.next();
        player.powerOff();
        player.next();
    }

相关文章

  • 状态模式(State)-七十二变

    设计模式文章陆续更新 java单例模式java代理模式java工厂模式 状态模式(State)-老孙七十二变 俺老...

  • 连工厂模式都不知道,别说你会设计模式

    设计模式文章陆续更新 java单例模式java代理模式java状态模式 在Java面向对象编程中,我们通常会new...

  • Java设计模式——状态模式

    Java设计模式之状态模式 这期分享一个行为模式中的状态模式,状态模式是行为模式中的最后几个模式了。希望多多关注交...

  • 设计模式

    Java 设计模式情景分析 ——单例模式 Java 设计模式情景分析——建造者模式 Java 设计模式情景分析——...

  • java/android 设计模式学习笔记(19)---状态模式

    java/android 设计模式学习笔记(19)---状态模式 【备注】只用于个人收藏

  • Java设计模式--状态模式

    和策略模式很类似,只不过策略模式是通过替换的方式改变类的功能,状态模式则是通过改变类的状态修改类的功能。简单实现 ...

  • Java 设计模式(状态模式)

    之前分享了两个 Java 设计模式,今天给大家带来的系列完整的 java 设计模式。为了帮助大家更好理解设计模式,...

  • Java设计模式----状态模式

    状态模式主要解决的是当控制一个对象状态转换的条件表达式过于复杂时的情况。把状态判断逻辑转移到表示不同状态的一系列类...

  • Java设计模式——状态模式

    状态模式其实没什么好说的,这种设计模式已经不能用简单来形容了,可以说我们从学习Java的时候就已经接触过了状态模式...

  • Java设计模式 - 状态模式

    定义 状态模式,即因状态而定,因状态而产生具体行为。状态模式与策略模式极其相似,但是二者却有着天壤之别。状态模式的...

网友评论

      本文标题:Java设计模式--状态模式

      本文链接:https://www.haomeiwen.com/subject/pjdhdftx.html