假设一个Java应用程序在不同的操作系统上运行,并且该程序依赖于特定的本地库。为了保证程序在所有操作系统上都能正常运行,以下哪种做法最符合Java“一次编译,到处运行”的理念,同时又能处理本地库的差异性?

答案解析

选项A错误,这违背了“一次编译,到处运行”的理念。选项B错误,本地库是编译成机器码的,无法嵌入Java字节码。选项D错误,反射机制本身不直接解决调用不同本地库的问题,它只是用来动态获取类信息和方法。选项C正确,JNI 允许 Java 代码调用本地代码(通常是 C/C++),并且可以通过为不同的操作系统提供不同的本地库实现,同时借助 JVM 的动态加载机制,实现 “一次编译,到处运行”,并处理了不同操作系统本地库的差异性。
正确答案:C
随机推荐
开始刷题