Java基础---引用类型和值类型
程序员文章站
2024-03-23 14:28:52
...
引用类型:
定义:引用值类型的赋值是引用传递,传递的是对象的引用地址。所以当你在一个地方修改这个对象之后,另一个引用该对象也会改变。
例子:
public class Test {
int num;
public Test(){
}
public Test(int num){
this.num=num;
}
public void setNum(int num){
this.num=num;
}
public static void main(String args[]){
Test test1= new Test(1);
Test test2= new Test();
test1=test2;
test2.setNum(2);
System.out.println("test1:"+test1.num+"test2:"+test2.num);
//结果为test1:2test2:2
}
}
(ps:因为把test2的引用地址赋值给了test1,所以test1,test2指向的都是同一块内存区域,所以修改其中一个两个会同时改变)
引用类型包括 :类class 、接口interface、 数组array 、字符串string
值类型:
定义:值类型也叫基本类型,通过值传递,所以当你把a的值赋值给b之后再修改a,b的值是不会跟着改变的。
例子:
int a=1;
int b=a;
a=2;
System.out.println("a:"+a+"b:"+b);
//结果为a:2 b:1
值类型包括:byte、short、int、long、float、double、char、boolean
·