JDK动态代理

网友投稿 554 2022-11-20

JDK动态代理

JDK动态代理

//接口public interface Subject { void doSomeThink();}//实现类public class RealSubject implements Subject{ @Override public void doSomeThink() { System.out.println("Do some thing"); }}//代理实现类/** * @author devin * @version 1.0.2 * @date 2021-03-16 15:49 */public class JDKProxy implements InvocationHandler { private Object target; public JDKProxy(Object target) { this.target = target; } public T getProxy(){ return (T) Proxy.newProxyInstance(target.getClass().getClassLoader(), target.getClass().getInterfaces(),this); } @Override public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { System.out.println("do some thing before"); Object result = method.invoke(target,args); System.out.println("do some thing after"); return result; }}// main 类public class Main { public static void main(String[] args) { Subject subject = new JDKProxy(new RealSubject()).getProxy(); subject.doSomeThink(); }}

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:centos设置防火墙
下一篇:python OS库
相关文章

 发表评论

暂时没有评论,来抢沙发吧~