java.lang.object源码_第三篇:java.lang.Object 类源码分析

Object所包含的方法如下:

98d5bbb488bad36e1934dfc2ba3a044c.png

① public Object();

构造函数: 大部分情况下,类对象的声明,都是通过构造函数完成的(Java中规定:在类定义过程中,对于未定义构造函数的类,默认会有一个无参数的构造函数), 并不是所有类构造方法都是public。

② private static native void registerNatives();

8ec157aaae84c95cc82860d9822b97f6.png

作用:RegisterNatives方法是JNI环境提供的,用于注册Java需要调用的Native方法 。

以下为RegisterNatives对应C语言的源码:

7e85d9816728847f48a5bc653351c1f2.png

① JNINativeMethod包含三个元素: 方法名, 方法签名, native函数指针。

② sizeof:c语言中用来求字节运算符,用来求一个对象(类型,变量,……)所占的内存大小(以字节为单位)。

③ native:修饰的方法并非Java完成,通过C/C++去完成,并编译成.dll文件,由Java进行调用。native修饰,则表示操作系统需提供此方法的实现,并交给Java使用。

④ registerNatives:此方法主要作用是将C/C++中的方法映射到Java中的native方法,实现方法命名的解耦。

③ protected native Object clone() throws CloneNotSupportedException;

① 主要作用:克隆,方法返回引用,指向clone出来的对象,此对象与原对象分别占用不同的堆空间。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值