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

天津网站建设招标网页微信版登陆看不到聊天记录吗

天津网站建设招标,网页微信版登陆看不到聊天记录吗,dante wordpress,网络维护公司怎么发展策略模式就是定义一系列的算法,把它们一个个封装起来, 并且使它们可相互替换。 基本概念 策略模式主要是解决多种算法相似的情况下#xff0c;使用if...else所带来的复杂和难以维护。当存在系统中有多个类#xff0c;但是区分它们的是只是它们的直接行为#xff0c;那我们…策略模式就是定义一系列的算法,把它们一个个封装起来, 并且使它们可相互替换。 基本概念 策略模式主要是解决多种算法相似的情况下使用if...else所带来的复杂和难以维护。当存在系统中有多个类但是区分它们的是只是它们的直接行为那我们可以把这些封装成一个一个类然后进行任意替换。 策略模式存在三种角色: Strategy 策略(算法)抽象ConcreteStrategy 各种策略(算法)的具体实现Context 策略的外部封装类或者说策略的容器类。根据不同策略执行不同的行为。策略由外部环境决定。 案例 抽象类 public interface Strategy {public void encrypt(); }定义算法抽象类方法为加密。 具体实现类 AES加密 public class AESStrategy implements Strategy{Overridepublic void encrypt() {System.out.println(执行AES);}}MD5加密 public class MD5Strategy implements Strategy {Overridepublic void encrypt() {System.out.println(执行MD5);} }继承算法抽象类具体用AES、MD5方法进行实现。 外部环境封装类 public class Context {private Strategy strategy;public Context(Strategy strategy) {this.strategystrategy;}public void encrypt(){this.strategy.encrypt();} }测试类 public class MainTest {public static void main(String[] args) {Context context new Context(new AESStrategy());context.encrypt();} } 小改一下 上面测试使用的时候需要自己新建一个实例阅读性不够好所以就重新用枚举类修改一下。 算法枚举类 public enum StrategyEnums {MD5(MD5算法){Overridepublic Class? getStrategyClass() {return MD5Strategy.class;}},AES(AES算法){Overridepublic Class? getStrategyClass() {return AESStrategy.class;} };public abstract Class? getStrategyClass();private String className;StrategyEnums(){}StrategyEnums(String className){this.className className;}public String getClassName(){return className;} }枚举方法返回算法具体实现类的Class并加上类的算法描述。 public class Context {private Strategy strategy;public Context(StrategyEnums enums) {try {this.strategy (Strategy) enums.getStrategyClass().newInstance();} catch (InstantiationException e) {e.printStackTrace();} catch (IllegalAccessException e) {e.printStackTrace();}}public void encrypt(){this.strategy.encrypt();} }包装类的参数改为枚举值根据枚举值来构建实例。 public class MainTest {public static void main(String[] args) {Context context new Context(StrategyEnums.AES);context.encrypt();} }测试可用但是这样的话就是需要同时维护枚举类新构建一个算法具体类同时要维护枚举类不过就是增加了可读性。 总结 使用策略方式可以提供良好的扩展性、避免大量的if...else的条件判断算法可以自由切换。当遇到多个类似的算法策略可以考虑策略模式。
http://www.hkea.cn/news/14589934/

相关文章:

  • 青之峰网站建设网站建设延期报告
  • 如何创建自己公司网站代码外包平台
  • 会小二也是做会议网站的如何免费建设自己稳定的网站
  • 营销网站的渠道构成基本包括wordpress文章分页共多少页
  • 要怎么才能建设一个网站北京建网站公司怎么样
  • 兰州网站建设兰州wordpress没有权限
  • 绵阳做手机网站广州市番禺区建设局网站
  • 网站建设服设计一个外贸网站需要多少钱
  • 90设计网站几次是什么意思微商管理系统
  • 专业做冻货的网站太原网站建设方案开发
  • 做免费嗳暧视频网站dw怎么做网站地图
  • 网站文章更新怎么做登陆网站取消备案
  • 网站开发手机app焦作建设厅网站
  • 做网站全是别人的链接有了网站 怎么做排名优化
  • 网站建设那种语言好做暧暧网站在线观看
  • 网站建设书本网页翻译软件哪个好用
  • 网站建设的需求是什么意思印尼请人做网站
  • 广东制冷设备网站建设费用小网站代码
  • 一个网站多个域名重定向怎么做工会网站建设策划书
  • 网页设计及网站建设在线作业为什么浙江建设厅网站
  • 贵阳网站建设q479185700惠从搜索引擎访问网站
  • 网站术语网站播放大视频如何做
  • 网站开发所需硬件北京市工程建设交易中心网站
  • 360网站排名怎么做上海松江建设工程开发有限公司网站
  • 网站建设管理要求什么是网络营销最基本的职能之一是网络营销的基础工作
  • 怎样给一个公司做网站阜宁网页定制
  • 南宁网站建站推广网站规划的基本内容有哪些
  • 网站建设模式怎么写如何做流量充值网站
  • 环保部网站官网建设项目限批办法手机h5是什么意思
  • 奥林匹克做校服的网站郑州专业喷绘制作公司