码迷,mamicode.com
首页 > 编程语言 > 详细

java Object class分析

时间:2014-11-29 19:00:58      阅读:171      评论:0      收藏:0      [点我收藏+]

标签:java


private static native void registerNatives();
static {
    registerNatives();
}

关联c函数,类似于将c的函数导入guolai,这样你就可以调用c的函数了,主要导入的函数是
static JNINativeMethod methods[] = {
{“hashCode”, “()I”, (void *)&JVM_IHashCode},
{“wait”, “(J)V”, (void *)&JVM_MonitorWait},
{“notify”, “()V”, (void *)&JVM_MonitorNotify},
{“notifyAll”, “()V”, (void *)&JVM_MonitorNotifyAll},
{“clone”, “()Ljava/lang/Object;”, (void *)&JVM_Clone},
}; 
所以当调用这些方法时,实际上是调用的c函数

public native int hashCode();
按照java约定规范,每个object都应该有一个hashcode值,主要用来支持哈希表,可以考虑这个问题,是怎么保证每个对象的哈希值接近不重复


protected native Object clone() throws CloneNotSupportedException;
按照约定,这个方法是返回一个对象的copy,相当于在内存中把这个对象重新复制了一下,可以研究下copy的深度

protected void finalize() throws Throwable { }

java垃圾回收机制规定,在一个对象呗销毁前必须要调用的方法

其它的一些方法主要是和线程有关

总结,Object class 主要是实现java一些基本的约定



java Object class分析

标签:java

原文地址:http://blog.csdn.net/wangjuntytl/article/details/41597599

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!