public class GlobalVar2
{
int a = 10;//定义成员变量
double b = 20;//定义成员变量
public static void main(String[] args)//入口方法
{
GlobalVar2 globalVar = new GlobalVar2();//实例化一个对象
System.out.println("the value a = " + globalVar.a);//静态方法里必须用对象来调用
globalVar.print();//对象调用方法
System.out.println("after changed the value a = " + globalVar.a);//输出打印
}
public void print()
{
System.out.println("the global variable a = " + a + ", b = " + b);
a=22;//给a赋值
System.out.println("the global variable a = " + a + ", b = " + b);
}
}
就是上面的一段程序 我不懂的问题有:
1.打印输出后 最后一个输出的是: after changed the value a =22 为什么啊 a=22不是在块中吗 调用的不是成员变量a=10吗?
2.在块中也就是 a=22;的前面如果加上类型修饰符 int 后 最后一条输出语句所显示的是成员变量a=10;为什么啊
另外 还有不是有不能在类中的块中重新定义吗
3.句柄和实例化对象有什么区别?
4.传值和传址有什么区别 能用程序说明下吗?
我是才学 有些问题总是很混淆呢 希望各位多多指教!