1

我不明白的意思

最初的 Java AWT 是通过使用 Java 编写的小部件来实现的,这些小部件委托给用 C 编写的对等类

用 C 编写的对等类”部分:

这意味着Java类包含本机代码?

4

2 回答 2

4

Hotspot Java 的大部分运行时系统都是用 C/C++ 编写的。在某一时刻,这包括 AWT 对等类。(它仍然可以做......)

本机代码不在 Java 中。相反,Java 通常具有native方法声明,这些方法声明通常在加载相应的本机库时绑定到本机实现。

(但是不要把这当作绿灯在你的代码中做同样的事情。与本机代码的接口是棘手的,如果你弄错了,你很可能会触发硬 JVM 崩溃......和一个痛苦的世界...... .)

于 2012-11-01T06:28:05.500 回答
1

我现在明白了。AWT 工具包通过在对等类中使用 C 代码来使用本机组件,这在 Swing 中得到了解决。谢谢你@安德鲁

于 2012-11-01T06:28:22.590 回答