关闭

关于反射的一些知识

147人阅读 评论(0) 收藏 举报

反射就是把java类中的各种成分映射成相应的java类

 

每一个对象在内存里面都有一个字节码,而Class就相当于每个字节码

Class.forName的作用就是返回一个字节码,而这个字节码返回有两种方式:
  第一就是,这个字节码曾经被加载过,已经存在java虚拟机里面直接返回
  第二就是,java虚拟机里面没有这份字节码,用类加载器去加载,把加载的字节码放在java虚拟机里面
 
得到各个字节码的方式:
  第一、类名.class 如:System.class   
  第二、对象.getClass() 如:new Date().getClass()
  第三、Class.forName("类名") 如:Class.forName("java.util.Date")

 

9个预定义Class实例对象:

8个基本类型(boolean、byte、char、short、int、long、float 和 double)加上void  
    如:int.class ==Integer.TYPE    Class cls = void.class
 

数组类型的Class实例对象用 Class.isArray()
 

总之,只要在源程序中出现的类型,都有各自的Class实例对象,例如:int[],void.....

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:19125次
    • 积分:349
    • 等级:
    • 排名:千里之外
    • 原创:18篇
    • 转载:0篇
    • 译文:0篇
    • 评论:3条
    文章分类
    文章存档
    最新评论