目录
应用场景
代理架构结构视图
类图
解决问题的程序代码
程序的执行结果
在APP应用软件中,需要记录业务方法的调用日期。 在不修改现有业务类的情况下,为每个类提供日记并记录代理类,然后通过代理类输出日志。 例如,在调用业务方法Mehtod ()之前,输出"调用Mehtod方法,调用时间2021.10.020533602436043 ",如果调用后没有抛出异常,则输入"调用Mehtod方法" 否则,输出“调用Mehtod方法失败”,在代理类中调用实际业务类的业务方法,使用代理模式设计日志记录模块的结构,绘制类图,实现仿真
)1)实现显示代理模型结构的视图。
)2)给出了该实例的类图和代码实现。
代理架构结构视图
类图
解题程序代码package测试; publicabstractclasssubject { publicabstractvoidmethod (; }//RealSubject:package测试; publicclassrealsubjectextendssubject { @ overridepublicvoidmethod () } { system.out.println ) (631鲁本伟的代码); }}//Proxy:package测试; import Java.text.simple date format; import java.util.Date; publicclassproxyextendssubject { privaterealsubjectrealsubject; public void before () { Date now=new Date ); simpledateformatft=newsimpledateformat (yyyy.mm.DD ),) hh:mm:ss ); 调用System.out.println ('方法method ) ),调用的时间为' ft.format(now ) ); } @Override public void method () { realSubject=new RealSubject ); before (; try { realSubject.method (; after (; }调用}catch(nullpointerexceptione ) { System.out.println ('方法method ) )失败; } } public void after () ({ System.out.println ) )的调用成功); }}//Client:package测试; public class client { publicstaticvoidmain (string [ ] args ) { Subject subject; subject=new Proxy (; subject.method (; }程序的执行结果