1.getClass()方法
public class Object { /*一个本地方法,具体是用C(C++)在DLL中实现的,然后通过JNI调用*/ private static native void registerNatives(); /*对象初始化时自动调用此方法*/ static { registerNatives(); } /*返回此Object的运行时类*/ public final native Class<?> getClass();
getClass()这个方法在反射中经常调用,一开始百思不得其解,不知道这个方法具体是怎么实现的,后来查阅关键字发现这是用native修饰的,也就是说这个方法在DLL中用c或者c++实现,然后JNI调用他。
然后的话就遇到了一个问题,getClass、Class和.class这三个玩意到底是什么关系啊我擦。于是先测试了一下.class(ps:有人说class是静态属性,我以为在object里面定义的,但是没找到,但是又可以Object.class调用这个东西,所以暂时没搞明白)。。。。
--------------以下来自java编程思想