问题来自于著名的SCJP 6书。
根据这本书,答案是:
✓E是正确的。在go1()中,局部变量x没有初始化。
我的问题是为什么go1()不能在第4行中使用初始化为6的实例变量x?
发布于 2015-03-24 20:08:02
因为局部变量x存在。如果int x;被注释掉,它将运行良好并使用实例变量。
发布于 2015-03-24 20:13:19
在Java中,所有的局部变量都应该被初始化,如果不是的话,就会产生一个错误。但是不应该初始化方法的参数。
如果你没有int x,那就可以了。因为在这种情况下,编译器将使用为类级别分配的局部变量。
https://stackoverflow.com/questions/29241864
复制相似问题