策略模式

server/2024/10/18 21:21:54/

策略模式

策略(Strategy)模式定义了一系列算法,并将每个算法封装起来,使它们可以相互替换,且算法的变化不会影响使用算法的客户。属于对象行为模式。

案例

一个团队可以使用不同的游戏策略:

java">public interface Stategy {void gameStategy();
}
java">public class Stategy01 implements Stategy{@Overridepublic void gameStategy() {System.out.println("正在使用策略1");}
}
java">public class Stategy02 implements Stategy {@Overridepublic void gameStategy() {System.out.println("正在使用策略2");}
}
java">public class Team {private Stategy stategy;public void setStategy(Stategy stategy){this.stategy = stategy;}public void startStategy(){System.out.println("游戏开始");stategy.gameStategy();}
}

测试:

java">public class Main {public static void main(String[] args) {Team team = new Team();team.setStategy(new Stategy01());team.startStategy();}
}

http://www.ppmy.cn/server/125236.html

相关文章

第三章-回归预测法:一元线性回归和多元线性回归分析-带例题(PythonExcel)

目录 一、一元线性回归 P70-7. 1、付款时间与所购商品价值之间是否存在显著的相关关系。 表 1 回归统计表 图 1 付款时间与所购商品之间的关系图 2、计算回归模型,并做相关统计检验。 表 2 方差分析表 表 3 回归系数表 (1)回归系数的…

Ubuntu24.04.1系统下VideoMamba环境配置

文章目录 前言第一步:基本的环境创建第二步:causal-conv1d和mamba_ssm库的安装第三步:安装requirements.txt 前言 VideoMamba环境的配置折磨了我三天,由于Mamba对Cuda的版本有要求,因此配置环境的时候Cuda版本以及各种…

嵌入式单片机底层原理详解

前言 此笔记面向有C语言基础、学习过数字电路、对单片机有一定了解且尚在学习阶段的群体编写,笔记中会介绍单片机的结构、工作原理,以及一些C语言编程技巧,对于还停留在复制模板、copy代码阶段的读者会有比较大的帮助,待学习完成后可以独立完成几乎所有单片机的驱动开发。 …

【Golang】深入解读Go语言中的错误(error)与异常(panic)

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…

如何使用PyInstaller将Python脚本及其配置文件打包成Windows可执行的exe文件

PyInstaller是一个强大的工具,它可以将Python应用程序转换为独立的可执行文件,这对于分发和部署Python应用非常有用。本文将指导你如何使用PyInstaller将一个包含多个导入模块和配置文件的Python脚本打包成Windows系统的exe文件。 步骤 1: 安装 PyInsta…

python数据分析与可视化需要掌握哪些知识点

在Python中进行数据分析与可视化,需要掌握一系列相关的库、工具和概念。以下是一些核心知识点: 1. Python基础知识 变量、数据类型、运算符控制流(if语句、循环)函数定义与调用模块与包的导入 2. NumPy 数组对象和数组运算统计…

CSS-Day2

CSS 列表 无序列表 ul - 列表项标记用特殊图形(如小黑点、小方框等)有序列表 ol - 列表项的标记有数字或字母ul.a {list-style-type:circle;}ul.b {list-style-type:square;}ol.c {list-style-type:upper-roman;} ol.d {list-style-type:lower-alpha;} …

《Linux从小白到高手》理论篇(七):Linux的时间管理运行级别启动过程原理详解

List item 本篇将介绍Linux的时间管理&运行级别相关知识,并将深入介绍Linux的启动过程及原理。 Linux的时间管理 Linux 时钟分为系统时钟(System Clock)和硬件(Real Time Clock,简称 RTC)时钟。系统时…