帮个忙!谢谢~
class Variable
{
int x=0,y=0,z=0;
void init(int x,int y)
{
this.x=x;
this.y=y;
int z=5;
System.out.println("x="+x+" y="+y+" z="+z);
//x=20 y=30 z=5 ,局部变量int z 他的作用域只在该方法的内部。在这里Z=5
}
}
public class VariableTest
{
public static void main(String args[])
{
Variable v=new Variable();
System.out.println("x="+v.x+" y="+v.y+" z="+v.z);
//x=0 y=0 z=0 创建对象 初始化变量 所以都为0。
v.init(20,30);
System.out.println("x="+v.x+" y="+v.y+" z="+v.z);
//x=20 y=30 z=0 调用函数init(),由于z有一个类变量和一个局部变量,这是在类外调用,所以z=0.
}
}
输出结果:
x=0 y=0 z=0
x=20 y=30 z=5
x=20 y=30 z=0
Press any key to continue...
这个例子主要讲 局部变量Z和域变量Z的作用域不同,请问从哪里能够体现出来。为什么第二次输出Z=5 第三次输出Z=0 ?