企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持知识库和私有化部署方案 广告
[java静态代理与动态代理简单分析](https://www.cnblogs.com/V1haoge/p/5860749.html) 使用设计模式的好处:最小限度的修改代码,实现复杂的功能,高度解耦 静态代理的弊端: 一个代理接口只能服务于一种类型的对象.对于稍大点的项目根本无法胜任. ~~~ //房产接口。。。 public interface FangChan { //房产信息方法。 void FangChanXinXi(); } ~~~ ~~~ public class BeiJingFangChan implements FangChan{ @Override public void FangChanXinXi() { // TODO Auto-generated method stub System.out.println("北京2环海景房。。。"); } } ~~~ ~~~ public class ShangHaiFangChan implements FangChan{ @Override public void FangChanXinXi() { // TODO Auto-generated method stub System.out.println("上海市中心别墅。。。"); } } ~~~ ~~~ public class LianJia implements FangChan{ private FangChan fc; public LianJia(FangChan fc){ this.fc=fc; } @Override public void FangChanXinXi() { // TODO Auto-generated method stub //代理类代理正常方法的同时 还可以在方法的前后加入其它方法。 fc.FangChanXinXi(); System.out.println("办理各种手续。。。"); System.out.println("代理成功收取代理费:1000万"); } } ~~~ ~~~ //卖家 。。。 public class MaiJia { public static void main(String[] args) { // TODO Auto-generated method stub //首先找到中介。。。告诉链家你要出售哪里的房子? LianJia lianjia=new LianJia(new BeiJingFangChan()); //然后调用代理类的实现方法,此时则会执行被代理类的方法。以及代理类,自身加入的功能。 lianjia.FangChanXinXi(); } } ~~~