面向对象(上)-方法-Java的值传递机制
一、针对于方法内变量的赋值
- 举例
public class ValueTransferTest {
public static void main(String[] args) {
System.out.println("******基本数据类型:******");
int m = 10;
int n = m;
System.out.println("m = " + m + ",n = " + n);
n = 20;
System.out.println("m = " + m + ",n = " + n);
System.out.println("******引用数据类型:******");
Order o1 = new Order();
o1.orderId = 1001;
Order o2 = o1;//赋值以后,o1和o2的地址值相同,都指向了堆空间中同一个对象实体
System.out.println("o1.orderId = " + o1.orderId + ",o2.orderId = " + o2.orderId);
o2.orderId = 1002;
System.out.println("o1.orderId = " + o1.orderId + ",o2.orderId = " + o2.orderId);
}
}
class Order{
int orderId;
}
- 规则
- 如果变量是基本数据类型,此时赋值的是变量所保存的数据值
- 如果变量是引用数据类型,此时赋值是的变量所保存的数据的地址值
二、针对于方法的参数概念
- 形参:方法定义时,声明的小括号内的参数
- 实参:方法调用时,实际传递给形参的数据
三、Java中参数传递机制:值传递
规则:
- 如果参数是基本数据类型,此时实参赋给形参的是实参真是存储的数据值
- 如果参数是引用数据类型,此时实参赋给形参的是实参存储数据的地址值
四、典型例题与内存解析
- 【例题一】参数类型为:基本数据类型
- 【例题二】参数类型为:引用数据类型
- 【例题三】
作者:犄角旮旯是程序媛吖
版权:本文版权归作者和博客园所有,欢迎转载,未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。