class
PassParam4
...
{
int obj_param;
public static void main(String[] args)...{
int param;
param = 50;
changeParam(param);//调用1:基本变量类型的传递(掌握此时栈内存,堆内存的关系)
System.out.println(param);
/** *//*******************************/
PassParam4 paramObj = new PassParam4();
paramObj.obj_param = 50;
changeParam(paramObj.obj_param);//调用2:基本变量类型的传递(实际操作的是两个基本类型变量)
System.out.println(paramObj.obj_param);
paramObj.obj_param = 50;
changeParam1(paramObj);//调用3:对象的传递(实际操作的是同一个对象)
System.out.println(paramObj.obj_param);
paramObj.obj_param = 50;
changeParam2(paramObj);//调用4:对象的传递(实际传递的是一个对象,change的是另一个对象)
System.out.println(paramObj.obj_param);
}
public static void changeParam(int param)...{
param = 30;
}
public static void changeParam1(PassParam4 paramObj)...{
paramObj.obj_param = 30;
}
public static void changeParam2(PassParam4 paramObj)...{
paramObj = new PassParam4();
paramObj.obj_param = 30;
}
}
int obj_param;
public static void main(String[] args)...{
int param;
param = 50;
changeParam(param);//调用1:基本变量类型的传递(掌握此时栈内存,堆内存的关系)
System.out.println(param);
/** *//*******************************/
PassParam4 paramObj = new PassParam4();
paramObj.obj_param = 50;
changeParam(paramObj.obj_param);//调用2:基本变量类型的传递(实际操作的是两个基本类型变量)
System.out.println(paramObj.obj_param);
paramObj.obj_param = 50;
changeParam1(paramObj);//调用3:对象的传递(实际操作的是同一个对象)
System.out.println(paramObj.obj_param);
paramObj.obj_param = 50;
changeParam2(paramObj);//调用4:对象的传递(实际传递的是一个对象,change的是另一个对象)
System.out.println(paramObj.obj_param);
}
public static void changeParam(int param)...{
param = 30;
}
public static void changeParam1(PassParam4 paramObj)...{
paramObj.obj_param = 30;
}
public static void changeParam2(PassParam4 paramObj)...{
paramObj = new PassParam4();
paramObj.obj_param = 30;
}
}