请选择 进入手机版 | 继续访问电脑版
设为首页收藏本站

猿媛之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 3418|回复: 0

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

[复制链接]

44

主题

48

帖子

198

积分

注册会员

Rank: 2

积分
198
发表于 2016-1-4 21:53:17 | 显示全部楼层 |阅读模式
        众所周知,在Java语言中,main方法是程序的入口方法,在程序运行的时候,最先加载的就是main方法,但这是否意味着main方法就是程序运行的时候第一个被执行的模块呢?
        答案是否定的。在Java语言中,由于静态块在类被加载的时候就会被调用,所以可以在main方法执行前,利用静态块实现输出“Hello World”的功能。以如下代码为例。
  1. public class Test {
  2.         static{
  3.                 System.out.println("Hello World1");
  4.         }
  5.         public static void main(String args[]) {       
  6.           System.out.println("Hello World2");
  7.         }
  8. }
复制代码

            程序输出结果为
  
Hello  World1
  
Hello  World2
  
        由于静态初始化域不管顺序如何,都会在main方法执行之前执行,所以,以下程序会有同样的输出结果。
  1. public  class Test {
  2.   
  3. public  static void main(String args[]) {     
  4.   
  5.                System.out.println("Hello World2");
  6.   
  7.             }
  8.   
  9.             static{
  10.   
  11.                         System.out.println("Hello  World1");
  12.   
  13.             }
  14.   
  15. }
复制代码
                                                                        
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|猿媛之家    

GMT+8, 2020-2-28 14:31 , Processed in 0.192942 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表