首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

五行代码求解释

2012-08-31 
5行代码求解释public class Test01 {{b 5 a b + 1 }int a int b }------------------------------

5行代码求解释
public class Test01 {
  {
  b = 5 ;
  a = b + 1 ;
  }
  int a ;
  int b ;
}
----------------------------------
以上代码a=b+1;报错,说b未定义。求解释。此贴的前贴请参见:
http://topic.csdn.net/u/20120705/15/ea3af978-8b08-4d9d-9553-1e0a18548e2c.html



[解决办法]

探讨
针对此再次提问:上述代码我修改如下,结果还是编译出错。
public class Test01 {
{
b = 5 ;
a = b + 1 ;
}
int a ;
int b ;
}

[解决办法]
我引用的这个页面的内容,里面特别举了和你一样的例子,你自己再看一下吧
[link=http://www.xyzws.com/Javafaq/what-are-the-forward-reference-rules/9][/link]
[解决办法]
有意思
看起来代码其实是没有什么问题,看看class的字节码,为了能顺利通过编译,我将int b的声明语句上移,int a的位置不动。
Java code
public class test {    int b ;  {  b = 5 ;  a = b + 1 ;  }    int a ;} 

热点排行
Bad Request.