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

上海网站建设设计培训信息

上海网站建设设计,培训信息,学习网站建设建议调查问卷,网站开发排行榜一、简介 状态模式一般用来实现状态机,而状态机常用在游戏、工作流引擎等系统开发中。不过,状态机的实现方式有多种,除了状态模式,比较常用的还有分支逻辑法和查表法。该模式允许对象内部状态改变使改变它的行为。 二、适用场景…

一、简介

状态模式一般用来实现状态机,而状态机常用在游戏、工作流引擎等系统开发中。不过,状态机的实现方式有多种,除了状态模式,比较常用的还有分支逻辑法和查表法。该模式允许对象内部状态改变使改变它的行为。

二、适用场景

  • 行为随状态而改变
  • 条件、分支语句的替代者

三、UML类图

请添加图片描述

四、案例

交通信号灯的红黄绿三色的变化。

package mainimport ("fmt"
)type TrafficLightState interface {Handle(trafficLight *TrafficLight)
}type RedState struct {Name string
}func NewRedState() *RedState {return &RedState{Name: "Red"}
}func (r *RedState) Handle(trafficLight *TrafficLight) {fmt.Println("Red light: Stopped")trafficLight.SetState(NewGreenState())
}type YellowState struct {Name string
}func NewYellowState() *YellowState {return &YellowState{Name: "Yellow"}
}func (y *YellowState) Handle(trafficLight *TrafficLight) {fmt.Println("Yellow light: Be prepared to stop")trafficLight.SetState(NewRedState())
}type GreenState struct {Name string
}func NewGreenState() *GreenState {return &GreenState{Name: "Green"}
}func (g *GreenState) Handle(trafficLight *TrafficLight) {fmt.Println("Green light: Go")trafficLight.SetState(NewYellowState())
}type TrafficLight struct {State TrafficLightState
}func NewTrafficLight() *TrafficLight {return &TrafficLight{State: NewRedState()}
}func (t *TrafficLight) SetState(state TrafficLightState) {t.State = state
}func (t *TrafficLight) Change() {t.State.Handle(t)
}func main() {trafficLight := NewTrafficLight()for i := 0; i < 10; i++ {trafficLight.Change()}
}
http://www.sczhlp.com/news/78455/

相关文章:

  • 什么是二级网站推广wordpress 百度云
  • 做网站需要哪些软件基层建设 官方网站
  • 几年做啥网站能致富上海企业自助建站
  • 理想单端校准件的反射系数
  • 公司做网站是com好还是cn好无代码开发平台 开源
  • 做网站需要哪些流程天津响应式网站建设
  • 上海尚海整装官方网站wordpress注册上面的logo
  • 一级网站和二级网站的区别近一周热点新闻
  • 吉安市建设规划局网站搭建平台网站有什么用
  • 网站运营职责10个不愁销路的小型加工厂
  • 做的网站百度没收录室内设计师测评网
  • 穆棱市住房和城乡建设局网站网站的跳出率很高
  • 通辽网站seo深圳 网站设计公司价格
  • dw怎么做网站教程互联网最赚钱的行业
  • C++ Boost.Asio 入门 之 Hello World
  • 网络营销郑州网站搭建方案上海建设执业资格注册中心网站
  • 怎么部署自己的网站网页设计模板素材美食
  • 网站链接跳转如何做微信哪里可以做视频网站
  • 中电建铁路建设公司网站珠海做网站找哪家好
  • 在线html网站开发wordpress主题基本文件配置
  • 爱站seo查询目前做响应式网站最好的cms
  • 企业服务网站制作短视频网站建设方案
  • 建站公司佛山虚拟主机和服务器
  • 一个空间多个php网站wordpress模板带小程序源码
  • 职场新人求生指南:第一年必须闯过的5大难关
  • nginx 配置basic认证
  • 镭拓网站建设官网wordpress添加搜索关键字
  • 织梦网站档目管理空白即墨做网站公司
  • seo网站推广软件排名深圳宝安中心区
  • 做好史志网站建设页面设计规范