什么是编程中的动态链接器?

Rou*_*bin -1 c c++ java android operating-system

我对链接器概念感到困惑

  1. 我们可以在java中使用链接器吗?
  2. 如果是这样,链接如何在android 开发中发生?

Jon*_*oni 5

一个连接器是一个程序,需要单独编译的文件并将它们组合成一个单一的可执行程序。

假设您有一个包含两个文件的程序:一个具有启动程序的 main 函数,另一个定义了一个辅助函数。当编译器处理主文件时,它会生成调用辅助函数的代码,而实际上不知道它是否存在或它做了什么。然后链接器接管并“解析”函数调用,以便在程序运行时输入正确的函数。

基本上有两种类型的链接器:

  • 静态链接器在执行前运行,生成可加载和运行的完全链接的可执行文件作为输出。
  • 一个动态链接器执行的可执行文件时运行时,查找在不同的库需要的码元。

通常,链接器概念仅适用于操作系统级别的本机代码。如果你想把它应用到Java,你可以说它只使用了动态链接;链接器集成到 JVM 中。