wait 发表于 2016-1-4 21:53:17

如何在main方法运行前输出“Hello World”

      众所周知,在Java语言中,main方法是程序的入口方法,在程序运行的时候,最先加载的就是main方法,但这是否意味着main方法就是程序运行的时候第一个被执行的模块呢?      答案是否定的。在Java语言中,由于静态块在类被加载的时候就会被调用,所以可以在main方法执行前,利用静态块实现输出“Hello World”的功能。以如下代码为例。public class Test {
        static{
                System.out.println("Hello World1");
        }
        public static void main(String args[]) {       
          System.out.println("Hello World2");
        }
}

            程序输出结果为
HelloWorld1HelloWorld2
      由于静态初始化域不管顺序如何,都会在main方法执行之前执行,所以,以下程序会有同样的输出结果。publicclass Test {

publicstatic void main(String args[]) {   

               System.out.println("Hello World2");

            }

            static{

                        System.out.println("HelloWorld1");

            }

}                                                                         http://www.yuanyuanba.com/data/attachment/portal/201512/10/224938q4b50w9lfqz0gx9v.jpg
页: [1]
查看完整版本: 如何在main方法运行前输出“Hello World”