zoukankan      html  css  js  c++  java
  • java种的native源码查看

     jdk源码中有一些native修饰的方法,比如unsafe.class,只能看见方法声明,但是具体的逻辑看不到。可以通过下载Openjdk来解决。openJDK上有完整的JDK源代码,JDK源代码由C++、Java、C、汇编 这四种语言组成。JVM主体是C++写的,JNI部分是C,工具类是Java写的,JVM里混有汇编代码。看不到实现是因为,JDK是闭源的。而要看到NATIVE方法必须要SUN受权现在只有OPENJDK组织是被SUN授权的。

    native方法是没有提供源码的。
    Java中要做到跨平台处理,肯定是要和本地的硬件联系,这个方法的作用就是与硬件层面结合,所以不同的平台的话,native执行都不一样。

    下载OpenJdk过程,可以参考:http://www.cnblogs.com/linzhanfly/p/9474173.html  ,它的查看可以通过查看share下面的native等等文件,但是有时候找不全。

    另一种方法,在线查看:

    查看过程:参考博客https://blog.csdn.net/losingcarryjie/article/details/78244823 

    1 登录AndroidXRef网站

    官网地址

    2 选择SDK版本

    3 进入搜索界面

    4. 查看Native

    直接在3中的搜索页面Full Search中输入“getDlWarning”,右边的In Projects选择“select all”,接着点击“search”,从搜索结果中找到后缀名带有c的文件(.cpp,.cc等等)即可

    note:方法名前面加了static修饰,用上面方法直接搜,如果没加,就需要类名_方法名形式。比如:Unsafe_compareAndSwapInt. 可以看到这是一个C++写的代码。

  • 相关阅读:
    阅读ARm芯片手册 阅读方法
    Linux驱动mmap内存映射
    Linux下inotify的基本使用及注意事项
    网络视频监控与人脸识别
    Linux pci驱动源码
    Verilog语法
    跟着我从零开始入门FPGA(一周入门XXOO系列)-1、Verilog语法
    周立功-我的25年嵌入式生涯
    Linux 进程学习
    [转]MFC下关于“建立空文档失败”问题的分析
  • 原文地址:https://www.cnblogs.com/Hermioner/p/9895177.html
Copyright © 2011-2022 走看看