静态代理
作者:互联网
静态代理
就好比自己要结婚,你可以找一个婚庆公司帮你处理结婚的事情
总结
真实对象和代理对象都要实现一个接口
代理对象要代理真实角色
好处:代理对象可以做很多真实对象做不了的事情,真实对象专注做自己的事情
** * 结婚接口 */ public interface Marry { //结婚 public void HappyMarry(); }
import com.multithreading.interfaeces.Marry; /** * 真实角色,你去结婚 */ public class YouImp implements Marry { @Override public void HappyMarry() { System.out.println("你要结婚了,很开心"); } }
import com.multithreading.interfaeces.Marry; /** * 代理角色,帮你结婚 */ public class WeddingCompanyImp implements Marry { //代理谁 --> 真实目标角色 private Marry target; public WeddingCompanyImp(Marry target) { this.target = target; } @Override public void HappyMarry() { before(); this.target.HappyMarry(); //这就是真实对象 after(); } private void after() { System.out.println("结婚之后收尾款"); } private void before() { System.out.println("结婚之前布置婚礼"); } }
import com.multithreading.interfacesImp.WeddingCompanyImp; import com.multithreading.interfacesImp.YouImp; public class StaticProxy { public static void main(String[] args) { new Thread(()-> System.out.println("我爱你")).start(); //这里的Thread相当于WeddingCompanyImp一样静态代理实现,Thread静态代理Runnable,都有run()方法 new WeddingCompanyImp(new YouImp()).HappyMarry(); } }
标签:WeddingCompanyImp,静态,Marry,代理,public,HappyMarry,void 来源: https://www.cnblogs.com/lj888/p/15905159.html