Java中不允许在一个范围大的作用域下重新定义同名变量。
{
inx x = 1;
{
int x = 2;
}
}
上面的代码虽然在C和C++里合法(将一个较大作用域的变量“隐藏”),但在java中是非法的,编译器会报告变量x已经定义过。
java设计者认为这样做会导致程序混乱。
Java中不允许在一个范围大的作用域下重新定义同名变量。
{
inx x = 1;
{
int x = 2;
}
}
上面的代码虽然在C和C++里合法(将一个较大作用域的变量“隐藏”),但在java中是非法的,编译器会报告变量x已经定义过。
java设计者认为这样做会导致程序混乱。