Java静态代理

时间:2021-09-20
本文章向大家介绍Java静态代理,主要包括Java静态代理使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

  

静态代理:由程序员创建代理类或特定工具自动生成源代码再对其编译。在程序运行前代理类的.class文件就已经存在了。

1 public interface Save {
2     void save();
3 }
//实现Save接口  被代理的
1
public class SaveOne implements Save { 2 @Override 3 public void save() { 4 System.out.println("被代理的"); 5 } 6 }
 1 //代理类   实现同一个接口
 2 public class ProxySaveOne implements Save {
 3    //私有化接口
 4     private Save target;
    //接受保存目标对象
5 public ProxySaveOne(Save target){ 6 this.target=target; 7 } 8 9 @Override 10 public void save() { 11 System.out.println("开始!!!");//对原对象 的扩展 12 target.save(); 13 System.out.println("结束!!!就这就是静态代理"); 14 } 15 }

静态代理总结:
1.可以做到在不修改目标对象的功能前提下,对目标功能扩展。
2.缺点:因为代理对象需要与目标对象实现一样的接口,所以会有很多代理类,类太多.同时,一旦接口增加方法,目标对象与代理对象都要维护。

 

原文地址:https://www.cnblogs.com/Fangdapao/p/15313892.html