Category: 编程
这是你的默认分类,如不需要,删除即可。
-
Java 状态模式 (State)示例代码
Public状态模式:允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。核心:把每个状态封装成独立类,上下文对象持有状态引用,状态切换委托状态类处理。 适用场景:对象行为依赖状态,大量 if‑else/switch 判断状态分支。 UML 角色 State(抽象状态):定义各状态公共行为接口 C
-
Java 中介者模式 (Mediator) 示例代码
Public模式思想:用一个中介对象封装一系列对象交互,各对象不需要显式互相引用,将多对多依赖转为一对多,降低耦合。 Mediator:中介者抽象接口 ConcreteMediator:具体中介者,维护所有同事对象,协调交互 Colleague:抽象同事类,持有中介者引用 ConcreteColleague:具
-
Java备忘录模式 (Memento) 示例代码
Public备忘录模式:在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,后续可以把对象恢复到原先保存的状态。 角色: Originator(发起人):需要保存状态的对象,可以创建备忘录,也可以恢复状态 Memento(备忘录):存储发起人的内部状态,只允许发起人访问 Caretaker
-
Nginx conf 配置文件完整详解
PublicNginx 配置文件整体分为:全局块、events 块、http 块、server 块、location 块 五层结构。主配置一般为 nginx.conf,业务站点通常放在 conf.d/*.conf 下。 配置语法:指令 参数; 分号不能省略;# 为注释。 一、整体结构概览 # 【全局块】运行级别
-
Linux系统Nginx常用命令
Public前提:nginx 一般安装路径 /usr/sbin/nginx,也有的在 /usr/local/nginx/sbin/nginx 可以用 whereis nginx 查看程序路径 一、nginx 原生命令(直接执行 nginx 二进制) # 启动 nginx nginx # 停止(优雅停止,处理完
-
Java 命令模式(Command)示例代码
Public命令模式:将请求封装成对象,使你可以用不同的请求对客户进行参数化;对请求排队、记录请求日志,以及支持可撤销操作。 角色: Command(命令接口):声明执行方法 execute(),撤销 undo() ConcreteCommand(具体命令):持有接收者,实现接口 Receiver(接收者):真
-
责任链模式:将请求沿着处理者链进行传递,每个处理者判断是否处理该请求;可以处理则执行,否则交给下一个处理器,请求发送方不需要知道谁最终处理请求。 适用场景:权限校验、审批流程、过滤器、日志级别处理、表单校验等。 场景模拟 模拟请假审批: 组长:审批 ≤3 天假期 部门经理:审批 3‑7 天假期 总经
-
Java 迭代器模式(Iterator)示例代码
Publicjava.util.Iterator 是集合迭代器,提供 hasNext()、next()、remove() 三个核心方法。 下面分:基础使用、自定义类实现 Iterable+Iterator(手写迭代器)两套示例。 1. 集合自带 Iterator 基础用法 import java.util.Ar
-
Java 观察者模式(Observer)示例代码
Public观察者模式:一个被观察者(主题)状态变化,自动通知所有注册的观察者,触发更新,属于行为型设计模式。 JDK 原生也提供 java.util.Observer / Observable,不过已经标记废弃,下面手写一套标准实现,便于理解原理。 UML 角色 Subject(抽象主题 / 被观察者):注册
-
核心思想:定义一个算法骨架,把部分步骤延迟到子类实现。父类固定流程,子类重写可变步骤,不改变整体执行顺序。 抽象父类:提供final模板方法,规定整体流程;定义抽象方法交给子类实现;可提供钩子方法。 具体子类:实现抽象步骤,自定义业务逻辑。 模板方法用final,防止子类重写打乱流程。 Java 完