1. 基本类型与引用类型在内存中的保存内容
变量分为两种:基本类型、引用类型。
基本类型的数据保存数值本身;而引用类型的变量保存的是引用值,即指向内存空间的地址
2. 基本类型和引用类型的区别
(1)访问方式:
基本类型:操作和保存—变量的实际的值
引用类型:值保存在内存中。操作的是对象的引用
(2)存储的位置
基本类型:保存在栈区
引用类型:引用地址存放在栈区,实际对象存放在堆区
3.引用传递和值传递
(1)值传递:方法调用时,实参将它的“值”传递给对应的形参,
函数接收到的是原始值的副本,此时内存中存在两个相等的基本类型——所以若方法中对形
参执行操作,并不会影响实参的值
(2)引用传递:方法调用时,实际参数的引用(是指地址,而不是参数的值)被传递给方法中相应的形式参数,函数接收到的是原始值的内存地址。
在方法中,形参和实参的内容相同,方法中对于形参的处理会影响实参的值。
public void test01(int a){
a = ++a;
System.out.println(a);
}
public void test02(People people){
people.height = 100;
System.out.println(people.height);
}
main方法测试:
int a = 200;
test01(1);
System.out.println(a);
People p = new People;
p.height = 200;
test02(p);
System.out.println(p.height);
输出结果:
201
200
100
100