2016 - 2024

感恩一路有你

java Java代码的静态编译和动态编译中的问题是什么?

浏览量:1382 时间:2021-04-13 10:08:06 作者:admin

Java代码的静态编译和动态编译中的问题是什么?

Java代码通常被静态编译成字节码,由相应平台的JVM加载和执行。静态编译无法动态扩展函数。动态编译可以通过两种方式实现:从源代码编译、调用java编译器和在JDK(而不是JRE)上运行。动态字节码生成技术(如cglib、ASM)创建类。动态编译可以简化代码,增强类功能,但也带来了代码的复杂性,不易在线维护。

静态库和动态库的区别有哪些?

对于服务器应用程序,为了尽量减少环境的影响,避免开发环境和联机环境的差异,以及其他应用程序对同一台机器的影响,即使用动态库,我们还倾向于打包所有使用的库。(最新的想法是打包整个文件系统,比如docker)。所以静态链接的优点是:1。节省空间:链接器将只复制您使用的对象。

2. 简单的包装。实际上,动态库的原始名称是共享对象。如果不准备共享,使用动态库是不好的。除非:

3。应用程序是多可执行和多进程结构,因此动态库既节省内存又节省磁盘空间。

4. 应用程序应该动态加载进程内插件:进程空间中的多个静态库会让您烦恼。

什么叫静态库和动态库?

静态库被加载到源代码中进行编译,例如各种头文件。

动态库被映射到程序的内存空间,以便在程序运行时进行动态加载,例如DLL文件。

java java数据库连接 java静态方法和非静态方法

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。