有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

swing java AWT本机操作系统库?

正如我们所知,AWT类使用本机OS库来创建GUI,而Swing使用Java库本身来创建GUI。谁能给我一个Windows OS库对应AWT GUI的例子吗

Thx


共 (3) 个答案

  1. # 1 楼答案

    理论上,这可能取决于jvm的实现。但在windows中,它可能使用WinAPI

  2. # 2 楼答案

    简短的答案是MFC(微软基金会类),所有的Windows小部件都基于.

    如果你还记得微软和Java之间的那场伟大的诉讼,那么微软与Java的开发方式“分裂”的原因就是当时的MFC,Sun当时考虑的是一个“JFC”,后来或多或少变成了Swing。他们不想重新发明他们已经拥有的东西。不管怎样,Swing是基于AWT的,而AWT在很大程度上是基于Motif/X的,如果我没记错的话,它也是MS基于MFC的。。。决定特定Java Swing/AWT元素(如按钮)如何运行的不是jvm,而是该平台的本机对等机,它通过JNI绑定到Java

  3. # 3 楼答案

    如果您需要了解如何在底层实现它的真正小细节,请下载jdk源代码(OpenJDK是FLOSS),然后自己阅读代码
    不要指望除了与该代码有直接关系的开发人员以外的任何人都知道您的问题的确切答案