Java设计模式-策略模式作业
Java设计模式-策略模式作业,所有类和接口均在一个package内
文章目录
前言
一、作业内容
二、具体实现
1.类图
2.Strategy接口
3.PreCopyStrategy类
4.PostCopyStrategy类
5.CRRTMotionStrategy类
6.Context类
7.Test类
前言
Java设计模式中的策略模式
一、作业内容
二、具体实现
1.类图
2.Strategy接口
public interface Strategy {public void algorithm();
}
3.PreCopyStrategy类
public class PreCopyStrategy implements Strategy{@Overridepublic void algorithm() {System.out.println("Use Pre-Copy algorithm");}
}
4.PostCopyStrategy类
public class PostCopyStrategy implements Strategy{@Overridepublic void algorithm() {System.out.println("Use Post-Copy algorithm");}
}
5.CRRTMotionStrategy类
public class CRRTMotionStrategy implements Strategy{@Overridepublic void algorithm() {System.out.println("Use CR/RT-Motion algorithm");}
}
6.Context类
public class Context {private Strategy strategy;public Context(Strategy strategy){this.strategy = strategy;}public void lookAlgorithm(){strategy.algorithm();}
}
7.Test类
public class Test {public static void main(String[] args) {Strategy preStrategy = new PreCopyStrategy();Strategy postStrategy = new PostCopyStrategy();Strategy CRRTStrategy = new CRRTMotionStrategy();Context preContext = new Context(preStrategy);Context postContex = new Context(postStrategy);Context CRRTContex = new Context(CRRTStrategy);preContext.lookAlgorithm();postContex.lookAlgorithm();CRRTContex.lookAlgorithm();}
}
Java设计模式-策略模式作业相关推荐
- java设计模式---策略模式
1,什么是策略模式? 策略模式,又叫算法簇模式,就是定义了不同的算法族,并且之间可以互相替换,此模式让算法的变化独立于使用算法的客户. 2,策略模式有什么好处? 策略模式的好处在于你可以动态的改变对象 ...
- JAVA设计模式-策略模式
1.1 需求背景 Background:M公司为某电影院开发了一套影院售票系统,在该系统中需要为不同类型的用户提供不同的电影票打折方式,具体打折方案如下: (1)学生凭学生证可享受票价8折优惠: (2 ...
- Java设计模式--策略模式
策略模式是一种定义一系列算法的方法,从概念上来看,所有这些算法完成的都是相同的工作,只是实现不同,它可以以相同的方式调用所有的算法,减少了各种算法类与使用算法类之间的耦合 策略模式就是用来封装算法的, ...
- 小故事说JAVA设计模式-策略模式【Strategy Pattern】
# 弄清概念 策略模式属于对象的行为模式.其用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换.策略模式使得算法可以在不影响到客户端的情况下发生变化 # 策略模式 ...
- Java设计模式-策略模式(Strategy)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.策略模式 二.策略模式示例代码 1.支付策略 2.具体支付策略实现 3.策略执行对象 4.测试 总结 前言 本篇介 ...
- Java设计模式——策略模式(解决满屏的if/else)
一.业务场景 项目需要对接支付系统,根据不同客户类型会有不同的支付方式,比如:支付宝.微信.银联.云闪付等等其他第三方支付平台,这个时候策略模式就大展身手了. 传统的if/else/switch 等等 ...
- Java设计模式----策略模式(Strategy)
1. 策略模式: 策略模式,也称为政策模式,定义如下: 定义一组算法,将每个算法都封装起来,使他们可以相互转化 2. 策略模式的原理是面向对象的继承和多态.策略模式的3个角色 a. Strateg ...
- Java设计模式策略模式(附实例代码)每天一学设计模式
1.策略模式(Strategy Pattern):定义一系列算法,将每一个算法封装起来,并让它们可以相互替换.策略模式让算法可以独立于使用它的客户而变化. (1)Context(环境类):环境类是使用 ...
- Java设计模式-策略模式(一)
一.策略模式是什么? 策略模式是指有一定行动内容的相对稳定的策略名称.策略模式在古代中又称"计策",简称"计",如<汉书·高帝纪上>:"汉 ...
最新文章
- 用户Session相关模块重构
- Jerry在2020 SAP全球技术大会的分享:SAP Spartacus技术介绍的文字版
- 《Hadoop大明白》【1】Hadoop的核心组件
- 【powerdesign】从mysql数据库导出到powerdesign,生成数据字典
- Java异常分类及处理
- Linux入门学习(十一)
- runtime_mysql_users_proxysql的配置系统
- [HDU4585]Shaolin
- 相机标定原理介绍(二)
- VS code open in browser无法打开chrome浏览器的解决办法
- DockerKubernetes ❀ Kubernetes集群 - DashBoard服务(Web管理)安装部署
- Linux 程序编译过程详解
- 电脑技巧2——调出控制面板(桌面控制面板)
- 引领5G智慧全场景 荣耀V30系列抢跑2020年市场
- 以水稻为例教你如何使用BSA方法进行遗传定位(上篇)
- 考研复试面试专业问题
- 【项目一】医疗实战-传智健康
- 职场中如何谈加薪,这么谈,成了也等于失败
- 为什么时钟信号比数据信号更容易引起辐射超标
- swagger 界面_使用Swagger和Scalatra进行界面驱动的开发简介
热门文章
- 前端html是什么?html5、css3是什么?
- kindle电子书分享网 - 技术栈
- 运用CDO对NC文件插值(更改分辨率)
- 2020 Android 大厂面试-插件化、模块化、组件化,android开发环境的搭建视频
- python学习——Day5
- UEFI开发与调试---QEMU虚拟盘的创建与修改
- js倒计时代码 支持同一页面多个倒计时代码(转)
- 十年资深马拉松跑者心脏骤停,跑马需当“心”
- HTML5 网页特殊字符大全(参考)
- GC1262R/S 单线圈无刷直流电机驱动芯片 PWM调速 、斜率控制、软启动、自锁保护 可匹配APX9262R