java JDK中的一些非native方法在哪实现的?

宇宙379 2011-01-26 03:10:51
比如Object的finalize方法,在编译器里还是在JVM中实现的呢?
我怎样才能看道他的具体实现代码???
...全文
223 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
native方法都是用C/C++在虚拟机里面给实现了,想看源码?可能吗?oracle要是都让你看源码了,他就该回家了。
nj_dobetter 2011-01-29
  • 打赏
  • 举报
回复
Object里面的finalize方法只是一个签名,没有实现, 需要子类去实现
wcwtitxu 2011-01-29
  • 打赏
  • 举报
回复
protected void finalize() throws Throwable { }

Object 中的全部实现就是这样一个空方法。。。真的没有什么奇妙的东东在里头啦





宇宙379 2011-01-29
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 wcwtitxu 的回复:]
Object 的 finalize 本来就是空的

子类有需要,就重写它
[/Quote]
重写一般就是super.finalize ();
这个实现在哪???
wcwtitxu 2011-01-26
  • 打赏
  • 举报
回复
Object 的 finalize 本来就是空的

子类有需要,就重写它
宇宙379 2011-01-26
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 suxianchun3 的回复:]
你下载jdk的源码,用eclipse导入 你就能到他是怎么实现的了 java是开源的 都有源码的 你下载源码就能看到。
[/Quote]

这个就是Object finalize方法的源代码:
protected void finalize() throws Throwable { }
空的,实现在哪呢???
liuyuhua0066 2011-01-26
  • 打赏
  • 举报
回复
Java无法直接访问到操作系统底层(如系统硬件等),为此Java使用native方法来扩展Java程序的功能,如 可以将native方法比作Java程序同C程序的接口。
suxianchun3 2011-01-26
  • 打赏
  • 举报
回复
你下载jdk的源码,用eclipse导入 你就能到他是怎么实现的了 java是开源的 都有源码的 你下载源码就能看到。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧