黑马程序员技术交流社区

标题: 代理类具有 final 和 public 修饰符? [打印本页]

作者: lkjghvcx@163.co    时间: 2013-7-29 21:48
标题: 代理类具有 final 和 public 修饰符?
本帖最后由 杨兴庭 于 2013-8-1 18:45 编辑

如题:
java动态代理,
代理类具有 final 和 public 修饰符?意味着它可以被所有的类访问,但是不能被再度继承
怎么解释,想不明白,final 和 public 修饰符?

补充:
由Proxy类的静态方法创建的动态代理类具有以下特点:
  动态代理类是public、final和非抽象类型的;
   动态代理类继承了java.lang.reflect.Proxy类;
   动态代理类的名字以“$Proxy”开头;
   动态代理类实现getProxyClass()和newProxyInstance()方法中参数interfaces指定的所有接口;
Proxy 类的isProxyClass(Class<?> cl)静态方法可用来判断参数指定的类是否为动态代理类。只有通过Proxy类创建的类才是动态代理类;
动态代理类都具有一个public 类型的构造方法,该构造方法有一个InvocationHandler 类型的参数。

搞不懂,
动态代理类是public、final和非抽象类型的;







作者: 哪颗最亮的星星    时间: 2013-7-29 21:54
被final所修饰的:就是最终的,不可变的,不可被继承的,
作者: lkjghvcx@163.co    时间: 2013-7-29 22:14
哪颗最亮的星星 发表于 2013-7-29 21:54
被final所修饰的:就是最终的,不可变的,不可被继承的,

这个我知道,
我问的是:
代理类具有 final 和 public 修饰符?   这个问题,为什么,有什么解释,有什么意义
作者: 王靖远    时间: 2013-7-30 13:10
用final修饰好像是为了让目标类可以被匿名内部类访问吧?
作者: 冒烟的芒果    时间: 2013-7-30 13:12
看不懂楼主的意思,什么代理类具有final和public修饰符啊?这个问题问得我好生糊涂。。
作者: lkjghvcx@163.co    时间: 2013-7-30 14:12
冒烟的芒果 发表于 2013-7-30 13:12
看不懂楼主的意思,什么代理类具有final和public修饰符啊?这个问题问得我好生糊涂。。 ...

由Proxy类的静态方法创建的动态代理类具有以下特点:
  动态代理类是public、final和非抽象类型的;
   动态代理类继承了java.lang.reflect.Proxy类;
   动态代理类的名字以“$Proxy”开头;
   动态代理类实现getProxyClass()和newProxyInstance()方法中参数interfaces指定的所有接口;
Proxy 类的isProxyClass(Class<?> cl)静态方法可用来判断参数指定的类是否为动态代理类。只有通过Proxy类创建的类才是动态代理类;
动态代理类都具有一个public 类型的构造方法,该构造方法有一个InvocationHandler 类型的参数。

搞不懂,
动态代理类是public、final和非抽象类型的;






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2