设计模式:策略、模板方法与命令模式详解
策略模式(Policy Pattern)
策略模式的核心思想是定义一系列算法,将每个算法封装起来,并使它们可以相互替换。这使得算法的变化独立于使用它的客户端。
- 概念 :能够在运行时动态选择算法的行为。
- 现实生活示例 :在足球比赛中,若A队在比赛接近尾声时以1 - 0领先B队,A队会采取防守策略以保持领先,而B队则会全力进攻以扳平比分。
- 计算机领域示例 :假设有一个备份内存插槽,当主内存已满且需要存储更多数据时,可以将数据存储在备份内存插槽中。若没有该备份插槽,尝试向已满的主内存存储额外数据时,数据可能会被丢弃、抛出异常或出现异常行为。因此,在存储数据前需要进行运行时检查。
代码实现
以下是策略模式的代码实现:
// IChoice.cs
using System;
namespace StrategyPattern
{
public interface IChoice
{
void MyChoice();
}
}
// FirstChoice.cs
using System;
namespace StrategyPattern
{
public class FirstChoice:IChoice
{
public void MyChoice()
{
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



