5、静态代理模式
/** * 1、真实对象和代理对象实现同一个接口; * 2、代理对象,代理真实角色; */public class StaticProxy { public static void main(String[] args) { //真实结婚对象 Person person = new Person(); person.HappyMarry(); //通过代理角色调用,WeddingCompany 的构造方法有参数 WeddingCompany weddingCompany = new WeddingCompany(person); weddingCompany.HappyMarry(); System.out.println("*****************************"); new WeddingCompany(new Person()).HappyMarry(); }}interface Marry{ void HappyMarry();}//真实角色class Person implements Marry{ @Override public void HappyMarry() { System.out.println("准结婚了"); }}//代理角色,》真实目标角色class WeddingCompany implements Marry{ //准备结婚的人 private Marry target; //构造方法,Alt+insert, 有参数 public WeddingCompany(Marry target) { //真实对象 this.target = target; } @Override public void HappyMarry() { befor(); this.target.HappyMarry(); after(); } public void befor(){ System.out.println("准备婚礼现场"); } public void after(){ System.out.println("缴纳婚庆尾款"); }}
Original: https://www.cnblogs.com/tfqfdr/p/16463944.html
Author: 颓废且努力奋斗的人
Title: 5、静态代理模式
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/588489/
转载文章受原作者版权保护。转载请注明原作者出处!