我正在关注YouTube上关于编译器的教程视频,当时我发现C编程语言更快,因为它允许静态链接和动态链接,但Java只允许动态链接,这就是为什么C比Java快得多的原因.
我的问题是,如果静态链接使程序运行得更快,为什么它不包含在Java中?我知道为什么Java的开发人员决定不包含静态链接必须有一些真正的理由,我只是想知道原因是什么.
注意:我不知道这个问题是否已经在SO上有答案,但由于我找不到,所以我发布了.如果答案已经存在,请提供链接.
注意:提供的教程链接是印地语.对于那个很抱歉.
Java在编译时不包含链接器步骤.使用Java 9,将有一个工具(jlink:JEP 275,JavaOne Talk on Project Jigsaw),它将创建一个将链接依赖关系的图像.
Java创建时的主要目标之一是"一次编码,随处运行".静态链接环境相关库或代码部分将否定此功能.