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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 韩金蕊 黑马帝   /  2011-12-29 07:05  /  2266 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 韩金蕊 于 2011-12-30 09:46 编辑

Class是java类名的描述,通过Class可以定义多个字节码,但是要字节码有什么作用?

评分

参与人数 1技术分 +1 收起 理由
杨强 + 1

查看全部评分

3 个回复

倒序浏览
字节码里包含了一个类的所有信息:成员变量,方法,构造方法,包等信息,
利用反射技术可以对一个类进行解剖,把各个组成部分映射成一个个对象。Field,Method,Contructor,Package等等

Class cls1=new Date().getClass();
Class cls2=Date.class;
Class cls3=Class.forName("java.util.Date");

Class.forName("类名")返回字节码,返回的方式有两种:
1.这份字节码曾经被加载过已经呆在java虚拟机里了
2.java虚拟机里还没有这个类的字节码用类加载器加载进来的放在虚拟机里以后就不用再加载了


评分

参与人数 1技术分 +1 收起 理由
吴上储 + 1 赞一个!

查看全部评分

回复 使用道具 举报
付星 黑马帝 2011-12-29 17:56:49
藤椅
运行时要加载Class到虚拟机,字节码是一个类的描述,对于对类或对象的照射
类通过Class名.class,对象通过getClass()得生成多个对象的仅一份Class字节码
反射就要用到字节码对象Class来动态得到类或对象的数据,如得到字段getFeild()、方法getMethod()等

评分

参与人数 1技术分 +1 收起 理由
吴上储 + 1

查看全部评分

回复 使用道具 举报
胡遇潮 发表于 2011-12-29 08:17
字节码里包含了一个类的所有信息:成员变量,方法,构造方法,包等信息,
利用反射技术可以对一个类进行解 ...

谢谢,明白了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马