设计模式学习-命令模式

概念

命令,接收者,执行者,一个命令模式由这些基本的组件组成。

接收者 会有一个函数

命令有一个持有接收者并且 有一个 执行函数

执行者 持有一个命令 并且 会执行这个命令

csharp 复制代码
using UnityEngine;
using System.Collections;
namespace CommondStructure{
public class CommandStructre: MonoBehaviour{
	Receiver receiver = new Receiver();
	ConcreteCommand command = new ConcreteCommand(receiver);
	Invoker invoker = new Invoker();
	
	invoker.SetCommand(command);
	invoker.InvokeCommand ();
}

abstract class Command{
	protected Receiver receiver;
	public Command(Receiver receiver){
		this.receiver = receiver;
	}
	public abstract void Execute();
}
public class ConcreteCommand:Command{
	public ConcreteCommand(Receiver receiver):base(receiver){}
	public override void Execute(){
		receiver.Action();
	}
}

class Receiver{
	public void Action(){
		Debug.Log("我被执行了");
	}
}	
class Invoker{
	private Command_command;
	public void SetCommond(Command command){
		this._command= command;
	}
	public void InvokeCommand (){
		_command.Execute();
	}
}
}

主旨:接收者 是存在需要执行的函数,命令只负责进行桥接

执行者 根据命令执行接收到到命令的接收者的方法

相关推荐
诺亚凹凸曼13 分钟前
23种设计模式-行为型模式-访问者
设计模式
自在如风。19 分钟前
Java 设计模式:装饰者模式详解
java·python·设计模式
Pasregret20 分钟前
11-Java并发编程终极指南:ThreadLocal与并发设计模式实战
java·开发语言·设计模式
虾球xz23 分钟前
游戏引擎学习第217天
c++·学习·游戏引擎
Always_away28 分钟前
数据库系统概论|第三章:关系数据库标准语言SQL—课程笔记3
数据库·笔记·sql·学习
Seon塞翁1 小时前
2025年Q1 AI 学习应用总结
人工智能·学习
Lareina~1 小时前
【元表 vs 元方法】
unity·lua
快乐源泉1 小时前
【设计模式】啊?没听过命令模式,有什么优点?
后端·设计模式
AI服务老曹2 小时前
成为一种国家战略范畴的新基建的智慧园区开源了
运维·人工智能·学习·开源·能源
小脑斧爱吃鱼鱼2 小时前
鸿蒙项目笔记(2)
笔记·学习·华为·harmonyos