33、Java 语言特性与技巧深度解析

Java 语言特性与技巧深度解析

1. 本地方法的使用与问题

在创建 NativeDemo.c 文件后,若使用 Microsoft C/C++ 编译器,需通过以下步骤创建 DLL 文件:
1. 使用命令 Cl /LD NativeDemo.c 进行编译,此命令可能需要指定 jni.h 及其附属文件 jni_md.h 的路径。编译后会生成 NativeDemo.dll 文件。
2. 运行 Java 程序,输出示例如下:

This is ob.i before the native method: 10
Starting the native method.
i = 10
Ending the native method.
This is ob.i after the native method: 20

本地方法虽能访问现有库例程并可能提升运行速度,但也存在显著问题:
|问题|详情|
| ---- | ---- |
|潜在安全风险|本地方法执行实际机器代码,可访问主机系统任意部分,不受 Java 执行环境限制,可能导致病毒感染。因此,未签名的小程序不能使用本地方法,且 DLL 的加载受安全管理器批准和限制。|
|丧失可移植性|本地代码包含在 DLL 中,运行 Java 程序的机器必须存在该 DLL。同时,每个本地方法依赖于 CPU 和操作系统,DLL 本身不可移植。所以,使用本地方法的 Jav

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值