Java最全Java命令模式(Command),腾讯T2手把手教你

线程、数据库、算法、JVM、分布式、微服务、框架、Spring相关知识

一线互联网P7面试集锦+各种大厂面试集锦

学习笔记以及面试真题解析

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

*/

public interface Command {

/**

  • 这个方法是一个返回结果为空的方法。

  • 实际项目中,可以根据需求设计多个不同的方法

*/

void execute();

}

/**

  • Command实现

  • @author 波波烤鸭

  • @email dengpbs@163.com

*/

class ConcreteCommand implements Command {

private Receiver receiver; //命令的真正的执行者

public ConcreteCommand(Receiver receiver) {

super();

this.receiver = receiver;

}

@Override

public void execute() {

//命令真正执行前或后,执行相关的处理!

receiver.action();

}

}

Invoke


/**

  • 调用者/发起者

  • @author 波波烤鸭

  • @email dengpbs@163.com

*/

public class Invoke {

// 也可以通过容器List容纳很多命令对象,

// 进行批处理。数据库底层的事务管理就是类似的结构!

private Command command;

public Invoke(Command command) {

super();

this.command = command;

}

//业务方法 ,用于调用命令类的方法

public void call(){

command.execute();

}

}

Client


public static void main(String[] args) {

Command c = new ConcreteCommand(new Receiver());

Invoke i = new Invoke©;

i.call();

//new Receiver().action();

}

Receiver.action()

开发中常见的场景:

=======================================================================

  1. Struts2中,action的整个调用过程中就有命令模式。
  2. 数据库事务机制的底层实现
  3. 命令的撤销和恢复

结语

小编也是很有感触,如果一直都是在中小公司,没有接触过大型的互联网架构设计的话,只靠自己看书去提升可能一辈子都很难达到高级架构师的技术和认知高度。向厉害的人去学习是最有效减少时间摸索、精力浪费的方式。

我们选择的这个行业就一直要持续的学习,又很吃青春饭。

虽然大家可能经常见到说程序员年薪几十万,但这样的人毕竟不是大部份,要么是有名校光环,要么是在阿里华为这样的大企业。年龄一大,更有可能被裁。

送给每一位想学习Java小伙伴,用来提升自己。

在这里插入图片描述

本文到这里就结束了,喜欢的朋友可以帮忙点赞和评论一下,感谢支持!

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)收录**

需要这份系统化的资料的朋友,可以点击这里获取

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值