混合编程jni之第一篇,helloworld

香菜聊游戏 香菜聊游戏     2023-03-09     295

关键词:

第一篇混合编程的文章,废话不多说,直接走起。

因为是第一篇文章,所以还是慢慢来。

Jni 是什么

JNI全称为Java Native Interface,即Java本地接口。通过JNI可以使得Java与C/C++进行交互。即可以在Java代码中调用C/C++代码或者在C/C++代码中调用Java代码。

因为JNI是JVM规范的一部分,因此可以将我们写的JNI的程序在任何Java虚拟机中运行。

JNI的这个方式让我们可以复用以前的C/C++代码,JNI是一种在Java虚拟机机制下的执行代码的标准机制。

官方文档

学习的话首先是看下官方的文档,在官网搜索了半天找到下面的网址,中间的曲折就不说了,都是泪!!!

Java Native Interface Specification Contents

英语好的话可以直接看上面的文档,英语不好的话就看下我下面的总结

我增加了一些例子,可能更好理解吧,OK ,开始吧

混合编程主要流程

混合语言编程的话,总有一个主要的语言,也就是启动语言。

所以也就分为两种情况:

混合编程jni之第二篇基础知识

...Jni】系列目录_香菜聊游戏的博客-CSDN博客上篇文章写了个helloworld,大概知道JNI是什么情况,混合编程JNI之第一篇,Helloworld_香菜-CSDN博客JNI第一篇,helloworldhttps://gamwatcher.blog.csdn.net/article/details/123265440?spm=1001.2014.3001.55 查看详情

混合编程jni系列目录

...暂定目录如下,希望在两周以内撸完,欢迎订阅 混合编程JNI之第一篇,Hellowo 查看详情

混合编程jni之第三篇c++项目的创建,clion,一些问题点

 系列目录:【混合编程Jni】系列目录_香菜聊游戏的博客-CSDN博客讲了一些Java侧的基础知识,但是还没有讲C++侧的,毕竟做JNI开发很少说是不参与c++的开发,比如我这次要做的项目就是包装别的组给的动态库,所以还是要会C+... 查看详情

混合编程jni之第三篇c++项目的创建,clion,一些问题点

讲了一些Java侧的基础知识,但是还没有讲C++侧的,毕竟做JNI开发很少说是不参与c++的开发,比如我这次要做的项目就是包装别的组给的动态库,所以还是要会C++的开发clion的安装IDE的选择IDE的选择常规来说是用Visualstudio,之前做... 查看详情

大话企业上云之第一篇

...气中的水蒸气遇冷液化成的小水滴或凝华成的小冰晶,所混合组成的漂浮在空中的可见聚合物。个人理解:云:提供计算、存储、应用和网络资源。按照云的部署模式来讲,云可以分为如下三种:私有云:客户单独部署的,客户... 查看详情

matrix源码分析之第一篇(代码片段)

Matrix源码分析之第一篇概述前几天腾讯将一款Android应用性能监控的框架matrix开源了,源码地址在https://github.com/Tencent/matrix,作者是微信终端团队。matrix到底是什么?据官方说法如下:Matrix是一款微信研发并日常使用的APM(Applicat... 查看详情

测试网站搭建+渗透+审计之第一篇使用idea启动网站

文章目录0x01java环境部署第一步一路下一步安装就行第二步查看配置环境变量第三步idea导入jdk(后面第四部分用)0x02Maven环境部署第一步打开IDEA,点击`CreateNewPorject`,选择`Maven`,如下图所示第二步默认即可(在真实需求中,可... 查看详情

2021版初级测评项目汇总之第一篇(代码片段)

文章目录一、安全物理环境1.1物理位置选择1.2物理访问控制1.3防盗窃和防破坏1.4防雷击1.5防火1.6防水和防潮1.7防静电1.8温湿度控制1.9电力供应1.10电磁防护二、安全通信网络2.1网络架构2.2通信传输2.3可信验证三、安全区域边界3.1... 查看详情

2021版初级测评项目汇总之第一篇(代码片段)

文章目录一、安全物理环境1.1物理位置选择1.2物理访问控制1.3防盗窃和防破坏1.4防雷击1.5防火1.6防水和防潮1.7防静电1.8温湿度控制1.9电力供应1.10电磁防护二、安全通信网络2.1网络架构2.2通信传输2.3可信验证三、安全区域边界3.1... 查看详情

混合编程jni第九篇之jni总结

 系列目录:【混合编程Jni】系列目录_香菜聊游戏的博客-CSDN博客动态库的加载可以使用标准System.loadLibrary从共享库加载原生代码。关于参数传递int、char等这样的基本数据类型,在本地代码和JVM之间进行复制传递,而对象是... 查看详情

混合编程jni第七篇之jni的命令行们(代码片段)

 系列目录:【混合编程Jni】系列目录_香菜聊游戏的博客-CSDN博客        今天将继续JNI的学习,jni编程中常使用的一些命令行工具如何使用事半功倍,今天就快速的过一下,希望在接下来的使用中... 查看详情

混合编程jni第五篇之c++访问java代码(代码片段)

 系列目录:【混合编程Jni】系列目录_香菜聊游戏的博客-CSDN博客今天继续JNI的学习,因为是混合编程,所以在写的过程中需要进行交互Java可以调用C++,C++也可以调用Java,虽然作为Java程序很少写C++,但是既然是做JNI开发,就... 查看详情

红队视角下的防御体系突破之第一篇介绍阶段方法(代码片段)

文章目录0x01什么是红队一、红队与黑客的区别二、红队的工作与业界熟知的渗透测试区别三、红队的组成0x02红队三板斧——攻击的三个阶段一、第一阶段:情报收集二、第二阶段:建立据点三、第三阶段:横向移动0... 查看详情

混合编程jni第四篇之引用和异常

系列目录:【混合编程Jni】系列目录_香菜聊游戏的博客-CSDN博客继续写JNI的知识点上篇基本上介绍了数据的转换以及方法签名的相关知识点,不懂的可以看看之前的文章建议循序渐进,不可冒进今天继续介绍JNI的知识点 除八... 查看详情

第一篇博客,helloworld

HelloWorld!这是我的CSDN第一篇博客,掐指一算,从学单片机开始,学习开发嵌入式软件已经5年了。终于找到一个小窝能够和大家一起分享交流技术。今天是一个美好的开始,你好,世界。 查看详情

混合编程jni第五篇之c++访问java代码

 今天继续JNI的学习,因为是混合编程,所以在写的过程中需要进行交互Java可以调用C++,C++也可以调用Java,虽然作为Java程序很少写C++,但是既然是做JNI开发,就不得不了解下如果在C++中访问Java的属性和方法,开始吧访问属... 查看详情

混合编程jni第十篇之jna初见

 系列目录:【混合编程Jni】系列目录_香菜聊游戏的博客-CSDN博客jna是什么JNA=JavaNativeAccess是基于JNI开发的一个框架。是为了降低JNI开发的复杂性的一个Java框架。可以不用写c/c++代码调用动态库。JNA开源项目的信息SUN公司主导... 查看详情

混合编程jni第十篇之jna初见

jna是什么JNA=JavaNativeAccess是基于JNI开发的一个框架。是为了降低JNI开发的复杂性的一个Java框架。可以不用写c/c++代码调用动态库。JNA开源项目的信息SUN公司主导开发的开源项目github地址:https://github.com/java-native-access/jna文档地址:h... 查看详情