java 代理模式詳解
阿新 • • 發佈:2020-10-11
package cn.pg.dai; public interface ChaoImpl { public void add(); public void edit(); public void delete(); }
package cn.pg.dai; public class Chao implements ChaoImpl { @Override public void add() { // TODO 自動生成的方法存根 System.out.println("zhe shi add func"); } @Overridepublic void edit() { // TODO 自動生成的方法存根 System.out.println("zhe shi edit func"); } @Override public void delete() { // TODO 自動生成的方法存根 System.out.println("zhe shi delete func"); } }
package cn.pg.dai; public class ProxyChao implements ChaoImpl { privateChao ch; public ProxyChao() { super(); // TODO 自動生成的建構函式存根 } public ProxyChao(Chao ch) { super(); this.ch = ch; } @Override public void add() { // TODO 自動生成的方法存根 this.ch.add(); this.logs("add"); } @Overridepublic void edit() { // TODO 自動生成的方法存根 this.ch.edit(); this.logs("edit"); } @Override public void delete() { // TODO 自動生成的方法存根 this.ch.delete(); this.logs("delete"); } public void logs(String st) { System.out.println("zhi xing la"+st+"chao zuo"); } }
package cn.pg.dai; public class Chent { public static void main(String[] args) { Chao ch=new Chao(); ProxyChao pch=new ProxyChao(ch); pch.add(); pch.delete(); } }