静态代理模式是设计模式的一种。
步骤一,先新建相应的接口(interface)public interface eatlunch {
void eat();
}
这里构建了一个名为吃午饭的接口,里面有一个方法为吃(eat)
步骤二,实现(implements)这个接口并实现相应的方法public class eatlunchimpl implements eatlunch{
@Override
public void eat() {
System.out.println("我在吃饭");
}
}
步骤三,新建一个代理类,就如同饭店是吃午饭的代理一样。
class fandian implements eatlunch{
eatlunch target;
fandian(eatlunch target)
{
this.target = target;
}
@Override
public void eat() {
before();
this.target.eat();
after();
}
private void after() {
System.out.println("结账");
}
private void before() {
System.out.println("洗手");
}
}
1.在该代理类的构造方法中,我们传入了一个eatlunch接口,并赋给该对象。
2.该类实现了eatlunch的方法,所以要重写eat方法,重写中我们可以为eat方法中嵌入代理类特有的方法
并加入构造方法中传入的eat方法
步骤四,在main方法中调用并执行代理类中的eat方法 public static void main(String[] args) {
new fandian(new eatlunchimpl()).eat();
}
这里我们将eatlunchimpl对象作为要代理的对象传入,再通过链式调用的方式,即可在控制台输出被静态代理修饰的方法最终输出
洗手
我在吃饭
结账
以上便是Java实现静态代理模式的方式



