广州北大青鸟计算机职业培训学校
互联网技术培训、软件技术培训、大数据培训、云计算培训、数据分析培训信息网
当前位置:网站首页 > 软件教程 > Java技术 > 正文

惠州什么是Java状态模式?_北大青鸟IT计算机学校

作者:邓华发布时间:2021-03-30分类:Java技术浏览:799


导读:最近惠州北大青鸟很多学员都在问这个问题,什么是Java状态模式?那么下面惠州北大青鸟学术部老师给大家解答一下这个问题。

最近惠州北大青鸟很多学员都在问这个问题,什么是Java状态模式?那么下面惠州北大青鸟学术部老师给大家解答一下这个问题。

在状态模式中,类行为基于其状态而改变。

状态模式是一种行为模式。

当使用状态模式时,我们创建各种状态对象和上下文对象,其行为随着其状态对象改变而变化。

例子

interface State {  public void doAction(Context context);
}class StartState implements State {  public void doAction(Context context) {
   System.out.println("In start state");
   context.setState(this);
 }  public String toString() {    return "Start State";
 }
}class StopState implements State {  public void doAction(Context context) {
   System.out.println("In stop state");
   context.setState(this);
 }  public String toString() {    return "Stop State";
 }
}class PlayState implements State {  public void doAction(Context context) {
   System.out.println("In play state");
   context.setState(this);  
 }  public String toString() {    return "Play State";
 }
}class Context {  private State state;  public Context() {
   state = null;
 }  public void setState(State state) {
   this.state = state;
 }  public State getState() {    return state;
 }
}public class Main {  public static void main(String[] args) {
   Context context = new Context();

   StartState startState = new StartState();
   startState.doAction(context);

   System.out.println(context.getState().toString());

   PlayState playState = new PlayState();
   playState.doAction(context);
   
   StopState stopState = new StopState();
   stopState.doAction(context);

   System.out.println(context.getState().toString());
 }
}

上面的代码生成以下结果。

In start state

Start State

In play state

In stop state

Stop State

想了解更多关于Java的资讯吗?可以来惠州北大青鸟新方舟校区了解一下。

Java13.png

Java

标签:惠州计算机JAVA软件开发惠州计算机Java软件开发惠州计算机JAVA培训惠州计算机JAVA软件开发学校惠州计算机Java软件开发培训JAVAJava软件开发北大青鸟IT计算机学校北大青鸟IT软件学校北大青鸟IT学校


Java技术排行
标签列表
网站分类
文章归档
最近发表