代理模式(Java)

it2022-05-09  29

代理模式(Java)

下面是关于我所写的所有设计模式代码(还是建议自己手打或者想一个别的例子练习一次) (https://github.com/lihang212010/DesignPatterns-/tree/master/designpatterns/src)

先来一个比较正规的UML

然后是我这个例子的图片 大体说下我这个例子,假如一个男孩捡到一本书,书是一个女生的,恰好男孩的一个女性朋友认识书的原主人,于是男孩把书给了他朋友,朋友还回了书。 这个男孩的朋友便是一个代理,使这个男孩不用见到书的原主人还回书的代理者。

代理者的思想便是这样,通过一个中间者实现功能。而这个中间者也就是朋友,只需要调用男孩的方法就可以实现还书操作。

代理模式应用有4种但意思太过虚拟,我就简单举个例子, 平常我们上网看图片,有的时候网络差,我们经常看到一张图片框,然后过一会,我们想要看到的图片才会出来,这个叫虚拟代理,是代理模式的一种应用。

代码在下面

接口

public interface Proxy { void Give(); }

男孩

public class Boy implements Proxy{ @Override public void Give() { System.out.print("还书"); } }

朋友

public class Girl implements Proxy{ Boy boy; public Girl() { boy=new Boy(); } @Override public void Give() { // TODO Auto-generated method stub boy.Give(); } }

主方法

public class Main { public static void main(String[] args) { // TODO Auto-generated method stub Girl girl=new Girl(); girl.Give(); } }

最新回复(0)