realSubject.getClass().getInterfaces()与RealSubject这个类有什么区别

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/29 09:44:07

realSubject.getClass().getInterfaces()与RealSubject这个类有什么区别
realSubject.getClass().getInterfaces()与RealSubject这个类有什么区别

realSubject.getClass().getInterfaces()与RealSubject这个类有什么区别
第一个realSubject.getClass().getInterfaces() 返回的是一个接口数组
是Class[]
第二个RealSubject是一个类
这两个是不一样的,你问的这个问题应该来源于代理模式,对吧?其实
Subject pro = (Subject)Proxy.newProxyInstance(classType.getClassLoader(),realSubject.getClass().getInterfaces(),handler);
Proxy.newProxyInstance()这个方法有三个参数.第一个是定义代理类型的一个加载者.第二个是要被代理对象的实现的接口列表,第三个是一个对象,这个对象要实现invocationhandler接口的invoke方法来执行你的方法.