编程语言
首页 > 编程语言> > 第四章 面向对象(上)3-类的结构之二:-3.5 java的值传递机制

第四章 面向对象(上)3-类的结构之二:-3.5 java的值传递机制

作者:互联网

1.针对于方法内变量的赋值举例:

System.out.println("*************基本数据类型******************");
int m = 10;
int n = m;

n = 20;
System.out.println("m = " + m + ",n = " + n);

System.out.println("*************引用数据类型******************");
Order o1 = new Order();
o1.OrderId = 1001;  //给OrderId属性赋值
Order o2 = o1;  //赋值以后,o1和o2的地址指相同,都指向了堆空间中同一个对象实体。

System.out.println("o1.OrderId = "  + o1.OrderId + "\t" + "o2.OrderId = " + o2.OrderId);
//o1.OrderId = 1001   o2.OrderId = 1001

o2.OrderId = 1002;
System.out.println("o1.OrderId = " + o1.OrderId + "\t" + "o2.OrderId = " + o2.OrderId);
//o1.OrderId = 1002    o2.OrderId = 1002
  }
}

class Order{
  int OrderId;
}

规则:
如果变量是基本数据类型,此时赋值的是变量所保存的数据值。
如果变量是引用数据类型,此时赋值的是变量所保存的数据的地址值。

2.针对于方法的参数概念
形参:方法定义时,声明的小括号内的参数
实参:方法调用时,实际传递给形参的数据

3.java 中参数传递机制:值传递
规则:
如果参数是基本数据类型,此时实参赋给形参的是实参真实存储的数据值。
如果参数是引用数据类型,此时实参赋给形参的是实参存储数据的地址值。

推广
如果变量是基本数据类型,此时赋值的是变量所保存的数据值。
如果变量是引用数据类型,此时赋值的是变量所保存的数据的地址值。

4.典型类体和内存解析:
例题一:参数为基本数据类型

例题二:参数为引用数据类型

标签:OrderId,java,变量,数据类型,面向对象,3.5,o2,o1,赋值
来源: https://www.cnblogs.com/anjiaxiaopihai/p/16284532.html