当前位置: 代码迷 >> Java相关 >> Java的反照与RTTI(运行时类型信息)的区别
  详细解决方案

Java的反照与RTTI(运行时类型信息)的区别

热度:92   发布时间:2016-04-22 19:53:31.0
Java的反射与RTTI(运行时类型信息)的区别

重要的事情说三遍:

反射并没有什么神奇之处!反射并没有什么神奇之处!反射并没有什么神奇之处!


  • 当通过反射与一个未知类型的对象打交道时,JVM只是简单地检查这个对象,看它属于哪个特定的类(和RTTI一样)。在用它做其他事情之前必须先加载那个类的class对象。
  • 那个类的class文件要么存在于本地,要么在网络上。

仅此而已。

反射和RTTI的区别就是何时获得和打开class文件。

  • RTTI在编译时打开和检查class文件。(换句话说,我们以普通的方式调用对象的方法)
  • 反射在运行时打开和检查class文件。