变量声明并不是真正的语句

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

标题是什么意思呢?可能有人说我是瞎说,看看下面你就会明白了!

例子

if(true)

String s=new String ("hello world");

就这样两句,如果你在你的程序里能够通过编译,那算你厉害,为什么通不过呢?原因就是第2行语句,并不是一个有效的语句,因为在if里声明的局部变量只能在if语句包围的范围引用,而上面的写法,说明if语句只包含一个变量的声明,也就是说声明的这个变量没有一点作用,当然编译器就不会通过编译了.

但是编译器也是足够的傻,看看下面就知道了

if(true){

String s=new String ("hello world");

}

这样写就可以通过编译,和上面的只差一个花括号,把语句括起来,编译器就会以为它是一个语句快,而不管实际中它是不是.你说编译器傻不傻!

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航