当前位置: 首页 > news >正文

网站开发上门服务费西安seo代运营

网站开发上门服务费,西安seo代运营,青岛互联网企业,c 网站开发需要学什么设计模式—行为型模式之状态模式 状态(State)模式:对有状态的对象,把复杂的“判断逻辑”提取到不同的状态对象中,允许状态对象在其内部状态发生改变时改变其行为。 状态模式包含以下主要角色: 环境类&am…

设计模式—行为型模式之状态模式

状态(State)模式:对有状态的对象,把复杂的“判断逻辑”提取到不同的状态对象中,允许状态对象在其内部状态发生改变时改变其行为。

状态模式包含以下主要角色:

  • 环境类(Context)角色:也称为上下文,它定义了客户端需要的接口,内部维护一个当前状态,并负责具体状态的切换。
  • 抽象状态(State)角色:定义一个接口,用以封装环境对象中的特定状态所对应的行为,可以有一个或多个行为。
  • 具体状态(Concrete State)角色:实现抽象状态所对应的行为,并且在需要的情况下进行状态切换。

示例

比如我们的会议有以下状态:待创建、待开始、进行中、已结束状态;我们的代码如下:

/*** 状态接口*/
public interface MeetingStateInterface {//当前状态void state();//下一个状态MeetingStateInterface next();
}public class WaitCreateMeetingState implements MeetingStateInterface{@Overridepublic void state() {System.out.println("当前在待创建状态");}@Overridepublic MeetingStateInterface next() {return new WaitStartMeetingState();}
}public class WaitStartMeetingState implements MeetingStateInterface{@Overridepublic void state() {System.out.println("待开始状态");}@Overridepublic MeetingStateInterface next() {return new ProcessingMeetingState();}
}public class ProcessingMeetingState implements MeetingStateInterface{@Overridepublic void state() {System.out.println("会议进行中状态");}@Overridepublic MeetingStateInterface next() {return new EndMeetingState();}
}public class EndMeetingState implements MeetingStateInterface{@Overridepublic void state() {System.out.println("已结束会议状态");}@Overridepublic MeetingStateInterface next() {return null;}
}

会议类如下:

public class Meeting {private MeetingStateInterface meetingState;public void setMeetingState(MeetingStateInterface meetingState) {this.meetingState = meetingState;}//会议当前状态public void state(){meetingState.state();}//下一个状态public void nextState(){if(this.meetingState != null){this.meetingState = this.meetingState.next();}}
}
public class StateTest {public static void main(String[] args) {Meeting meeting = new Meeting();meeting.setMeetingState(new WaitCreateMeetingState());meeting.state();meeting.nextState();meeting.state();meeting.nextState();meeting.state();meeting.nextState();meeting.state();meeting.nextState();}
}

运行结果如下:

image-20240112193519932

状体模式一定要有状态切换。

http://www.qdjiajiao.com/news/4822.html

相关文章:

  • 网站开发都是用什么做的广州推广seo
  • 永川建网站铁岭网站seo
  • web3普通人从哪里入手惠州seo优化服务
  • 做网站需要域名吗企业网站设计素材
  • 专业做公司网站网址查询服务器地址
  • 做细胞激活的母液网站百度一下百度网页版进入
  • 阿里巴巴怎么做网站关键词推广优化排名如何
  • 自己做网站花钱吗免费发软文的网站
  • 免费的网站模板有哪些网页设计培训学校
  • 网站开发 确认函seo教育培训机构
  • 美团外卖网站开发上海网站建设推广服务
  • 重庆网站建设咨询网络项目怎么推广
  • 做哪类英文网站赚钱郑州网站推广优化公司
  • 云游戏平台网页版宁波如何做seo排名优化
  • 宠物网站建设进度表北京seo结算
  • 教育平台网站开发站长联盟
  • wordpress 适合做小说站吗自己做网络推广怎么做
  • 汽车4s店网站模板武汉seo排名扣费
  • 做网站的标签及属性新闻今天
  • 免费自助建站软件公司seo是什么级别
  • 本网站建设seo好找工作吗
  • dede wap网站模板下载广州发布紧急通知
  • 遵义哪里做网站营销型网站外包
  • 如何申请一个网站国内手机搜索引擎十大排行
  • 开发公司春联站长之家 seo查询
  • 小型b2c网站百度快速收录3元一条
  • 建一个网站报价seo的工作内容
  • 私做政府网站技术优化seo
  • 邢台企业做网站价格天津关键词优化网站
  • 宁波公司网站建立5118大数据平台官网