编写恶作剧的JAVA程序

编写恶作剧的JAVA程序

作者:张桂权

   不知道你有没有认识到利用java中静态变量的声明来编写“变态”的程序呢!请看下面的程序:

/*

  Hello.java

*/

public void Hello {

  static {

    System.out.println("Hello, world ! /n");

    System.exit(0);

  }

}

    这会让你吃惊吗?经过编译解释后得到的结果竟然是:

Hello, world !

 

    标准的程序代码应该象下面这样来写:

/*

  Hello.java

*/

public void Hello {

  public static void main(String[] args){  

    System.out.println("Hello, world ! /n");

  }

}

       前面一个程序就利用了static的特性来处理静态变量的声明和定义。在程序还没有编译到(或者说检测)main函数之前就把内存分配了。而她碰到的却是一个 System.out.println("Hello, world ! /n");语句。所以她就事先处理这个语句。然而进跟着是System.exit(0);语句迫使程序结束,所以main函数的检测就不再执行了。如果没有加System.exit(0);语句,那么你会看到那个令人讨厌的“找不到main函数”的警告 !知道了吧 !

       其实,你还可以在static代码模块中做譬如算术运算,字符串处理等一些轻量级级别的代码操作,但是象图形界面这样操作是不能实现的,应为不可能采用静态的方式来处理的。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值