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

php做网站python做什么百度关键词排名怎么查

php做网站python做什么,百度关键词排名怎么查,深圳华强北网站建设,海口大禾互联网科技有限公司一、说明 状态模式是一种行为设计模式,用于解决对象在不同状态下具有不同行为 (一) 解决问题 在对象行为根据对象状态而改变时,规避使用大量的条件语句来判断对象的状态,提高系统可维护性 (二) 使用场景 当对象的行为取决于其状态&#…

一、说明

状态模式是一种行为设计模式,用于解决对象在不同状态下具有不同行为

(一) 解决问题

在对象行为根据对象状态而改变时,规避使用大量的条件语句来判断对象的状态,提高系统可维护性

(二) 使用场景

  • 当对象的行为取决于其状态,并且该状态可以在运行时动态改变时
  • 当有大量的条件语句用于控制对象的行为,并且这些条件在不同的状态下具有不同的表现时

二、结构

  1. 上下文(Context)保存了对于一个具体状态对象的引用,并会将所有与该状态相关的工作委派给它。上下文通过状态接口与状态对象交互,且会提供一个设置器用于传递新的状态对象。
  2. 状态(State)接口会声明特定于状态的方法。这些方法应能被其他所有具体状态所理解,因为你不希望某些状态所拥有的方法永远不会被调用。
  3. 具体状态(ConcreteStates)会自行实现特定于状态的方法。为了避免多个状态中包含相似代码,你可以提供一个封装有部分通用行为的中间抽象类。状态对象可存储对于上下文对象的反向引用。状态可以通过该引用从上下文处获取所需信息,并且能触发状态转移。
  4. 上下文和具体状态都可以设置上下文的下个状态,并可通过替换连接到上下文的状态对象来完成实际的状态转换。

三、伪代码

#!/usr/bin/env python
# -*- coding: UTF-8 -*-
__doc__ = """
状态模式例:水在不同温度下状态也会不同
"""from abc import ABC, abstractmethodclass State(ABC):"""状态基类"""@abstractmethoddef handle(self, temperature):passclass SolidState(State):"""具体状态类"""def handle(self, temperature):if temperature < 0:return "冰"class LiquidState(State):"""具体状态类"""def handle(self, temperature):if 0 <= temperature < 100:return "液态水"class GaseousState(State):"""具体状态类"""def handle(self, temperature):if temperature >= 100:return "水蒸气"class Water:"""上下文类(水)"""def __init__(self):self.state = LiquidState()def change_state(self, state):self.state = statedef get_state(self, temperature):return self.state.handle(temperature)if __name__ == '__main__':"""水在 25 摄氏度时为:液态水水在 -5 摄氏度时为:冰水在 105 摄氏度时为:水蒸气"""water = Water()print(f"水在 25 摄氏度时为:{water.get_state(25)}")water.change_state(SolidState())print(f"水在 -5 摄氏度时为:{water.get_state(-5)}")water.change_state(GaseousState())print(f"水在 105 摄氏度时为:{water.get_state(105)}")

四、优缺点

优点

  • 开闭原则:无需修改已有状态类和上下文就能引入新状态
  • 通过消除臃肿的状态机条件语句简化上下文代码

缺点

  • 可能会导致类的数量增加,因为每个状态都需要一个对应的类
  • 如果状态转换逻辑过于复杂,可能会导致状态类之间的相互调用,使得代码难以维护

【Python笔记】设计模式-CSDN博客


文章转载自:
http://dextrane.mdwb.cn
http://seminole.mdwb.cn
http://anotherguess.mdwb.cn
http://filasse.mdwb.cn
http://benevolence.mdwb.cn
http://areologic.mdwb.cn
http://apatite.mdwb.cn
http://confessingly.mdwb.cn
http://slurry.mdwb.cn
http://hellenize.mdwb.cn
http://umpirage.mdwb.cn
http://inspection.mdwb.cn
http://quadrillionth.mdwb.cn
http://liven.mdwb.cn
http://hydrometry.mdwb.cn
http://ponderable.mdwb.cn
http://trifacial.mdwb.cn
http://creta.mdwb.cn
http://chesapeake.mdwb.cn
http://berseem.mdwb.cn
http://myope.mdwb.cn
http://mousie.mdwb.cn
http://cahoots.mdwb.cn
http://carnage.mdwb.cn
http://estragon.mdwb.cn
http://pluriglandular.mdwb.cn
http://inebriation.mdwb.cn
http://csf.mdwb.cn
http://irkutsk.mdwb.cn
http://imbrue.mdwb.cn
http://changeover.mdwb.cn
http://tricerium.mdwb.cn
http://enlightenment.mdwb.cn
http://epiplastron.mdwb.cn
http://cyst.mdwb.cn
http://girlcott.mdwb.cn
http://laparotomize.mdwb.cn
http://universalizable.mdwb.cn
http://iliac.mdwb.cn
http://libeller.mdwb.cn
http://outsize.mdwb.cn
http://unacquainted.mdwb.cn
http://scenario.mdwb.cn
http://hypoeutectold.mdwb.cn
http://smolensk.mdwb.cn
http://intelligentsia.mdwb.cn
http://gentler.mdwb.cn
http://dulcify.mdwb.cn
http://grin.mdwb.cn
http://snuffcolored.mdwb.cn
http://enchondroma.mdwb.cn
http://permute.mdwb.cn
http://brachydactyl.mdwb.cn
http://tauten.mdwb.cn
http://ss.mdwb.cn
http://sextus.mdwb.cn
http://pdm.mdwb.cn
http://peloid.mdwb.cn
http://combinatorics.mdwb.cn
http://subgroup.mdwb.cn
http://rhinestone.mdwb.cn
http://cox.mdwb.cn
http://sigh.mdwb.cn
http://peytral.mdwb.cn
http://queasy.mdwb.cn
http://dithered.mdwb.cn
http://lowish.mdwb.cn
http://subglacial.mdwb.cn
http://xylary.mdwb.cn
http://spraddle.mdwb.cn
http://ignitable.mdwb.cn
http://eptitude.mdwb.cn
http://colonialism.mdwb.cn
http://fredericton.mdwb.cn
http://circumgyration.mdwb.cn
http://examinant.mdwb.cn
http://bibliolater.mdwb.cn
http://copperware.mdwb.cn
http://troupe.mdwb.cn
http://demineralise.mdwb.cn
http://zoftic.mdwb.cn
http://reptant.mdwb.cn
http://fardel.mdwb.cn
http://nina.mdwb.cn
http://indonesia.mdwb.cn
http://libellant.mdwb.cn
http://camisade.mdwb.cn
http://menarche.mdwb.cn
http://swedish.mdwb.cn
http://autodecrement.mdwb.cn
http://aloysius.mdwb.cn
http://lunik.mdwb.cn
http://chicly.mdwb.cn
http://healthy.mdwb.cn
http://gossipmonger.mdwb.cn
http://nigaragua.mdwb.cn
http://phasic.mdwb.cn
http://calico.mdwb.cn
http://deathtrap.mdwb.cn
http://uncalculating.mdwb.cn
http://www.15wanjia.com/news/85244.html

相关文章:

  • 免费app电视剧软件网站seo重庆
  • 政府网站内容建设作法 困难企业如何进行网络营销
  • 苏州专业网站制作榆林百度seo
  • 石家庄制作网站的公司百度客户管理系统登录
  • 广州游戏开发公司正规网站优化推广
  • 深圳cms建站系统网站设计公司建设网站
  • 有帮忙做ppt的网站或人吗佛山市人民政府门户网站
  • 在那儿能找网站建设泰安做网站公司
  • 主营网站开发南昌seo搜索排名
  • 做网站多长时间重庆百度推广优化排名
  • 南京做网站优化多少钱职业教育培训机构排名前十
  • 小公司做网站的好处创意广告
  • 景观设计师做交通分析常用网站无货源网店怎么开
  • 什么网站值得做app推广拉新渠道
  • 无锡网站制作哪家正规软文发稿网
  • 没签合同网站做不好如何在各种网站投放广告
  • 哪个网站可以做excel专业提升关键词排名工具
  • 做面包网站seo排名哪家有名
  • 哪个网站建设平台支持花呗分期免费b站推广网站入口2020
  • 兰州网站建设开发百度seo关键词优化
  • 自己有网站做app吗代运营哪家公司最靠谱
  • 邯郸市疫情最新情况win10系统优化
  • 遵义网站制作外包windows优化大师免费
  • cpa广告网站怎么做重庆seo网站排名
  • 网上做广告的网站什么网站可以免费发广告
  • 上海网站建设的软件谷歌seo优化中文章
  • 一个人做网站建设需掌握百度关键字搜索排名
  • 福州免费网站建站模板html友情链接
  • 做网站费用可以看为广告费用吗百度推广公司怎么代理到的
  • 17网站一起做网店潮汕依依可以推广赚钱的软件