JDK动态代理为什么必须针对接口?
代理模式的定义:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。
接口是一种规范,定义了一组相似的行为。
通俗一些就是,当你调用代理类的方法时与你调用被代理类的方法时在写法上是没有任何区别的,只有接口才能保证这种一致性。
15 回答8.2k 阅读
8 回答5.9k 阅读
1 回答4.1k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
2 回答3.8k 阅读
1 回答2.2k 阅读✓ 已解决
动态代理是通过反射来实现的,而且接口不依赖实现,才能体现动态代理的优点啊。如果是一个实体类怎么能是动态代理呢?可以查查什么是动态代理?
当然还可以用组合模式,来实现类似动态代理的功能。