- 定义了一个接口
IEat,其中包含了一个get()方法。 - 实现了一个真实主题类
EatReal,它实现了IEat接口,并实现了get()方法,用于真正执行吃食物的操作。 - 实现了一个代理主题类
EatProxy,它也实现了IEat接口,内部持有一个IEat类型的成员变量eat,用于代理真实主题类。- 在
get()方法中,代理主题类在调用真实主题类之前会执行一些准备工作(prepare()方法),然后调用真实主题类的get()方法,最后执行一些清理工作(clear()方法)。
- 在
- 在
javaDemo类的main方法中,创建了一个代理对象EatProxy,并将真实主题对象EatReal传入代理对象的构造函数中。 - 最后调用代理对象的
get()方法来执行吃食物的操作。package acc; interface IEat{ public void get(); } class EatReal implements IEat{ public void get() { System.out.println("【真实主题】得到一份食物,而后开始品尝美味。"); } } class EatProxy implements IEat{ private IEat eat; public EatProxy(IEat eat) { this.eat=eat; } public void get() { this.prepare(); this.eat.get(); this.clear(); } public void prepare() { System.out.println("【代理主题】1、精心购买食材。"); System.out.println("【代理主题】2、小心地处理食材。"); } public void clear() { System.out.println("【代理主题】3、收拾碗筷。"); } } public class javaDemo { public static void main(String[] args) { IEat eat=new EatProxy(new EatReal()); eat.get(); } }
java简单代理模式的实现
最新推荐文章于 2026-06-30 13:49:58 发布
695

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



