Java中哪些类是不能被JDK动态代理的?哪些类是不能去实现接口?
jdk代理只能代理接口,不能代理类。除了抽象类不能实现接口,其它都可以。望采纳
一楼的回答我不认同,我总结一下:
Java中不能被JDK动态代理的类:
java.lang.Class
和 java.lang.Object
,不能被动态代理。对于类是否能实现接口,只要类符合实现接口的语法规则,就可以实现接口。
包括抽象类!
JDK动态代理不能代理final类和包含final方法的类。
final类不能去实现接口,因为final类不能被继承,而接口需要被实现,也就无法实现。
接口用于定义 API。它定义了类必须得遵循的规则。同时,它提供了一种抽象,因为客户端只使用接口,这样可以有多重实现,如 List 接口,你可以使用可随机访问的 ArrayList,也可以使用方便插入和删除的 LinkedList。接口中不允许写代码,以此来保证抽象,但是 Java 8 中你可以在接口声明静态的默认方法,这种方法是具体的。