A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张晋瑜 中级黑马   /  2013-2-15 13:59  /  1172 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 zhangjinyu1991 于 2013-2-20 13:02 编辑

有G<T extends Number>的程序编译成.class文件,再经过反编译后,变成了G extends Object,为何不是G extends Number呢?

3 个回复

倒序浏览
泛型只存在于编译时期,.class文件中并没有存储泛型的相关信息,反编译时都会变成Object
回复 使用道具 举报
1,java的泛型呢只是图有其表,只存在于编译时期。生成的class文件里是没有泛型的
2,变成了G extends Object,为何不是G extends Number呢?
    这个是因为,任何类都是Object的子类,所以 extends Object 至于说extends Number根本就不存在这回事
回复 使用道具 举报
谢波 发表于 2013-2-15 21:40
1,java的泛型呢只是图有其表,只存在于编译时期。生成的class文件里是没有泛型的
2,变成了G extends Obje ...

谢谢,有理:D
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马