1.基本类型的数据赋值储存了**实际的值**
int a = 1;
int b = a;
a = 3;
输出 a = 3;
输出 b = 1;
2.String虽然是引用类型但是它是和**基本类型一样**的
3.其他的引用类型会受到引用的影响
Student s1 = new Student();
Student s2 = new Student();
s1.setAge(18);
s1.setAge(20);
s2 = s1;
s2.setAge(30);
输出 s1.getAge = 30;
输出 s2.getAge = 30;
因为把s1赋值给s2,其实是把s2指向s1的引用。
所以s2和s1是同一个引用,他们不是相互独立的。
***解决方法***
s2.setAge(s1.getAge);
进行赋实际值,这样就没问题了。
String是特殊的引用
最新推荐文章于 2022-03-05 18:49:11 发布