怎么在java项目中使用State状态模式
短信预约 -IT技能 免费直播动态提醒
这期内容当中小编将会给大家带来有关怎么在java项目中使用State状态模式,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
java 之State状态模式
在状态模式中,一个类的行为基于它的状态的改变而改变。状态模式归属于行为型模式。
在下面的实例中,我们创建了一个接口State,定义了一个操作方法,两个实现类StartState和StopState。另外,创建了一个上下文类Context,这个类关联到State类。UML类图如下所示:
//状态类 public interface State { public void doAction(Context context); } //实现类StartState.java public class StartState implements State { public void doAction(Context context) { System.out.println("Player is in start state"); context.setState(this); } public String toString(){ return "Start State"; } } //实现StopState.java public class StopState implements State { public void doAction(Context context) { System.out.println("Player is in stop state"); context.setState(this); } public String toString(){ return "Stop State"; } } //上下文Context.java 实际运用时可自行更改 public class Context { private State state; public Context(){ state = null; } public void setState(State state){ this.state = state; } public State getState(){ return state; } } //测试类 public class StatePatternDemo { public static void main(String[] args) { Context context = new Context(); StartState startState = new StartState(); startState.doAction(context); System.out.println(context.getState().toString()); StopState stopState = new StopState(); stopState.doAction(context); System.out.println(context.getState().toString()); } }
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
怎么在java项目中使用State状态模式
下载Word文档到电脑,方便收藏和打印~
下载Word文档
猜你喜欢
怎么在java项目中使用State状态模式
这期内容当中小编将会给大家带来有关怎么在java项目中使用State状态模式,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。java 之State状态模式在状态模式中,一个类的行为基于它的状态的改变而改变。
2023-05-31
怎么Java项目中使用模板方法模式
本篇文章为大家展示了怎么Java项目中使用模板方法模式,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。模拟抽象类:/*** 模板方法模式的模板框架(以去银行办理业务为例)* @description:
2023-05-31
如何在Java项目中使用适配器模式
本篇文章为大家展示了如何在Java项目中使用适配器模式,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。适配器一共包括3种角色1、目标:目标是一个接口,该接口是客户想使用的接口2、被适配者:被适配者是一
2023-05-31
责任链模式如何在Java项目中使用
责任链模式如何在Java项目中使用?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。责任链模式主要包括以下几个角色1、处理者:处理者是一个接口,负责规定具体处理者处
2023-05-31
vue怎么使用Vuex状态管理模式
这篇“vue怎么使用Vuex状态管理模式”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“vue怎么使用Vuex状态管理模式”文
2023-06-29
HttpURLConnection怎么在Java项目中使用
这篇文章将为大家详细讲解有关HttpURLConnection怎么在Java项目中使用,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。包括使用HttpURLConnection执行get/po
2023-05-30
redis在java项目中怎么使用
Redis在Java项目中的使用Redis是Java项目中常用的内存内数据库,它提供高速性能和丰富的功能。可以使用Java客户端库(如Jedis、Lettuce、Redisson)连接到Redis服务器。Redis可以存储键值对,用于缓存数据、管理会话状态和实现消息队列。此外,它还提供有序集合、哈希表、地理空间索引和Lua脚本等功能。最佳实践包括使用连接池、设置键过期时间、考虑持久化和监控Redis实例。
2024-04-12
如何在Android项目中使用selector改变按钮状态
如何在Android项目中使用selector改变按钮状态?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Android 使用selector改变按钮状态实例详解在res/dra
2023-05-31
怎么在java项目中实现一个单例模式
这篇文章将为大家详细讲解有关怎么在java项目中实现一个单例模式,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。java设计模式之单例模式定义:如果一个类始终只能创建一个实例,那么这个类被称为
2023-05-31
事件委托模式怎么在java项目中实现
这篇文章将为大家详细讲解有关事件委托模式怎么在java项目中实现,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。java实现事件委托模式的实例详解举例说明:一个班级,有两类学生,A类:不学习,
2023-05-31
怎么在Java项目中实现一个策略模式
怎么在Java项目中实现一个策略模式?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。策略模式指:策略模式指将程序中可变部分抽象分离成一系列的算法,并将每一个算法封装起来,而且
2023-05-31
Calendar类怎么在java项目中使用
Calendar类怎么在java项目中使用?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。java中的Calendar在开发中经常被忽略,这篇博客总结一下这个类,
2023-05-31
Hutool库怎么在Java项目中使用
本文章向大家介绍Hutool库怎么在Java项目中使用的基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。简介Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使J
2023-06-06
怎么在Java项目中实现一个观察者模式
怎么在Java项目中实现一个观察者模式?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。观察者模式:对象间的一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象(被观察)。
2023-05-31
在Java项目中怎么使用@Annotation注解
本篇文章给大家分享的是有关在Java项目中怎么使用@Annotation注解,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Java注解是在JDK5时引入的新特性,鉴于目前大部分
2023-05-31
unmodifiableList方法怎么在java项目中使用
本篇文章给大家分享的是有关unmodifiableList方法怎么在java项目中使用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。java对象中primitive类型变量可以
2023-05-31
怎么在Java项目中实现一个工厂方法模式
本篇文章为大家展示了怎么在Java项目中实现一个工厂方法模式,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。定义:定义一个用于创建对象的接口,让子类决定实例化哪一个类,工厂方法使一个类的实例化延迟到其
2023-05-31
怎么在Java项目中实现一个简单工厂模式
今天就跟大家聊聊有关怎么在Java项目中实现一个简单工厂模式,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。简单工厂模式解释: 简单工厂模式(Simple Factory
2023-05-31
如何在Java项目中使用lambda表达式
这期内容当中小编将会给大家带来有关如何在Java项目中使用lambda表达式,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Java8引入了lambda表达式。lambda表达式并不是新功能,只是为了方便代
2023-05-31
在java web项目中使用 HttpClient模拟浏览器
这期内容当中小编将会给大家带来有关在java web项目中使用 HttpClient模拟浏览器,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。HttpClient模拟浏览器登录后发起请求浏览器实现这个效果需
2023-05-31