hello world app如何在java中的后台工作

时间:2012-02-03 18:32:56

标签: java background jvm

我想知道当我运行一个没有任何额外初始参数的简单java hello world应用程序时后台会发生什么。

例如在后台,java调用窗口的功能就像绘制一个简单的窗口一样:

public  class example
{  
        public static void main(String args[])
        {
           System.out.println("Hello World!");
        }
}

public  class example2 extends Jframe
{  
        public static void main(String args[])
        {
           new example2().setvisible(true);
        }
}

4 个答案:

答案 0 :(得分:1)

http://docs.oracle.com/javase/tutorial/ui/overview/intro.html

Java旨在与平台无关。它不使用本机Windows调用,至少不是直接调用。

答案 1 :(得分:1)

  

java调用窗口的功能如何绘制一个简单的窗口?

我猜你问的是Java Native Interface

答案 2 :(得分:1)

如果您询问JVM如何与底层操作系统交互,this article提供了一个与平台无关的一般概述。

我认为您可能对“字节代码指令集”一节特别感兴趣,该节指出在执行该行时:

System.out.println("Hello world!");
  

在编译时,Java编译器将单行print语句转换为以下字节代码:

0 getstatic #6 <Field java.lang.System.out Ljava/io/PrintStream;>
3 ldc #1 <String "Hello world!"> 
5 invokevirtual #7 <Method java.io.PrintStream.println(Ljava/lang/String;)V> 
8 return 

值得注意的是,JDK包含一个可用于检查字节代码的工具,称为类文件反汇编程序。您可以在所选终端中使用 javap 命令来使用此工具。

答案 3 :(得分:0)

首先,您的第一个代码示例仅打印“Hello World!”进入终端。 至于调用窗口,操作系统会处理它。如果您没有注意到OSX上的窗口与Windows上的窗口之间存在差异。