状态设计模式:允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。将动作委托到代表当前状态的类。行为会随着内部状态而改变。状态模式的类图和策略模式一模一样。但是两者的用法不同。使用状态设计模式会导致设计的类的数量会大大增加。
一个不太恰当的代码实现:
public class StateMain {
//状态接口
State beginState;
State endState;
public void begin(){
beginState.begin();
}
public void end(){
endState.end();
}
public State getBeginState() {
return beginState;
}
public void setBeginState(State beginState) {
this.beginState = beginState;
}
public State getEndState() {
return endState;
}
public void setEndState(State endState) {
this.endState = endState;
}
}
public class BeginState implements State{
private StateMain stateMain;
public BeginState(StateMain stateMain) {
this.stateMain = stateMain;
}
@Override
public void begin() {
System.out.println("开始状态");
//将状态委托到另一个类中执行
stateMain.setEndState(stateMain.getEndState());
}
@Override
public void end() {
System.out.println("开始状态");
}
}
- 大小: 15.8 KB
分享到:
相关推荐
状态模式是一种行为设计模式,它允许对象在其内部状态改变时改变其行为,使得对象看起来好像修改了它的类。这种模式通常用于当一个对象的行为取决于它的状态,并且它必须在运行时根据状态改变来改变其行为时。在这个...
设计模式是构建大型软件系统zui强大的方法之一,优化软件架构和设计...全书囊括单例设计模式、工厂模式、门面模式、代理模式、观察者模式、命令模式、模板方法模式、复合模式、状态设计模式以及反模式等多种设计模式。
状态模式是一种行为设计模式,它允许对象在内部状态改变时改变其行为,对象看起来似乎修改了它的类。这种模式常用于处理对象的状态变化,并且在不同的状态下,对象的行为也相应地变化。在Java中,我们可以利用接口、...
状态模式是一种行为设计模式,它使对象能够在内部状态改变时改变其行为,看起来好像改变了它的类。这种模式常用于处理对象在不同状态下表现各异的情况,避免了复杂的条件语句,提高了代码的可读性和可维护性。 在...
状态模式是一种行为设计模式,它使你能在运行时改变对象的行为。在状态模式中,一个对象的状态变化会导致其行为的变化。这种模式常用于处理具有多种状态的对象,且不同状态下对象的行为差异较大。通过将每种状态封装...
状态模式是一种行为设计模式,它允许对象在内部状态改变时改变其行为,对象看起来似乎修改了它的类。这种模式常用于处理对象的状态变化,并且在不同的状态下,对象的行为也相应地变化。 状态模式的主要组件包括: 1...
8. **状态设计模式**:允许对象在其内部状态改变时改变它的行为,对象看起来好像修改了它的类。 9. **中介者设计模式**:用一个中介对象来封装一系列的对象交互,降低对象之间的耦合度。 10. **职责链设计模式**:...
状态模式是一种行为设计模式,它允许对象在内部状态改变时改变其行为,看起来好像对象改变了它的类。在Java中,状态模式通常通过定义不同的状态类和一个上下文类来实现,其中上下文类持有状态对象并调用其方法来响应...
状态设计模式用到的主要(30P概念 最小抽象状态设计模式 视频播放器具体状态应用程序 扩展状态设计:添加状态 添加更多的状态和流媒体播放能力 小结 第11章 策略模式 什么是策略模式? 策略模式使用的主要OOP...
状态模式在Android编程中是一种非常重要的设计模式,它主要用于处理对象在不同状态下的不同行为。状态模式的核心思想是将每一种状态封装成一个类,使得对象可以在运行时根据其内部状态的变化来改变其行为。 一、...
状态模式是一种行为设计模式,它允许对象在内部状态改变时改变其行为,对象看起来似乎修改了它的类。这种模式常用于处理对象的状态变化,并且使代码结构清晰,易于维护。 在C++中,状态模式通常包含以下几个关键...
这份文件讲诉了设计模式之状态模式,是以例子的形式进行讲诉的,希望可以帮助学习的人!
通过学习如何在代码中使用...第10章 状态设计模式 第5部分 MySQL和PHP设计模式 第11章 通用类负责连接,代理模式保证安全 第12章 策略设计模式的灵活性 第13章 职责链设计模式 第14章 利用观察者模式构建多设备CMS
状态设计模式是面向对象设计中的一种行为模式,它允许对象在内部状态改变时改变其行为。这个模式将对象的行为和状态解耦,使得对象的状态变化更加灵活且易于管理。在这个"CPSC 600状态模式存储库"中,我们可以预见到...
Java 设计模式之策略模式与状态模式 策略模式是 Java 中的一种设计模式,它主要用于解决系统与第三方接口进行数据交互的问题。当系统需要与多种格式的数据进行交互时,使用策略模式可以很好地解决这个问题。例如,...
状态模式是一种行为设计模式,它允许对象在内部状态改变时改变其行为,对象看起来似乎修改了它的类。在这个示例中,我们关注的是如何使用Java实现一个审批流程,特别是涉及二级审批的场景。这个压缩包文件包含了一个...
设计模式是软件工程中的一种重要思想,它是在特定情境下,为解决常见问题而形成的一套最佳实践。在本文中,我们将深入探讨24种设计模式,并结合混合设计模式的概念,以及它们在实际项目中的应用案例。 首先,设计...
### 设计模式之状态模式详解 #### 一、设计模式概述 设计模式是软件工程领域的一种最佳实践,它提供了一套解决特定问题的通用方案。根据功能的不同,设计模式大致可以分为三大类:创建型模式、结构型模式以及行为型...
状态模式是一种行为设计模式,它允许对象在内部状态改变时改变其行为,对象看起来似乎修改了它的类。这种模式常用于处理对象的状态变化,使得代码更易于理解和维护。在这个实例中,我们将通过Java来深入理解并应用...