package demo9;
/**
* 参数的数据类型:
* 1.值类型(8种基本数据类型)
* 2.引用类型(类、数组)
* 二、参数的传递
* 1.按值传参(实参传递给形参的值是实参值的一份拷贝)
* 2.按址传参(实参传递给形参的是实参的地址)
*/
public class ParamDemo1 {// 演示参数类型为值类型的参数传递
public void changevalue(int val) {// 形参的数据类型为值类型
System.out.println("方法内val变量改变前的值:" + val);
// 改变 val 变量的值
val ++;
System.out.println("方法内val变量改变后的值:" + val);
}
public static void main(String[] args) {
// 创建对象
ParamDemo1 data = new ParamDemo1();
int num = 10;
System.out.println("引用changevalue方法前num变量的值" + num);
//调用changcalue方法
data.changevalue(num); // num是实参
System.out.println("引用changevalue方法后num变量的值" + num);
}
}
package demo9;
public class ParamDemo2 {
public int id;
public void changeValue(ParamDemo2 val) {
System.out.println("方法内val对象id变量改变前的值:"+val.id);
val.id ++;
System.out.println("方法内val对象id变量改变后的值:"+val.id);
}
public static void main(String[] args) {
// 创建对象
ParamDemo2 data = new ParamDemo2();
data.id = 10;
System.out.println("data对象id变量未调用changeValue方法前的值" + data.id);
data.changeValue(data);
System.out.println("data对象id变量未调用changeValue方法后的值" + data.id);
}
}
Comments NOTHING