一、分类
- 字符串构建器(
StringBuilder,StringBuffer)。 - 集合框架(如
ArrayList,HashMap,HashSet等)。 - 数组。
- 日期和时间类(如
java.util.Date或 Joda-Time 的MutableDateTime)。 - 自定义类,如果它们提供修改内部状态的方法。
二、自定义类可变解释
Student
public class Student {
private String name;
private String age;
public Student(String name, String age) {
this.name = name;
this.age = age;
}
public Student() {
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
@Override
public String toString() {
return "Student{" +
"name='" + name + '\'' +
", age='" + age + '\'' +
'}';
}
}
Teacher
public class Teacher {
private String name;
private String age;
Student students;
public Teacher() {
}
public Teacher(String name, String age, Student students) {
this.name = name;
this.age = age;
this.students = students;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
public Student getStudents() {
return students;
}
public void setStudents(Student students) {
this.students = students;
}
@Override
public String toString() {
return "Teacher{" +
"name='" + name + '\'' +
", age='" + age + '\'' +
", students=" + students +
'}';
}
}
测试类 :test02Test
public class test02Test {
Teacher liTeacher;
@Test
public void testAlist() {
Student a = new Student("十二", "12");
Student b = new Student("十三", "13");
// Teacher liTeacher = new Teacher("李老师", "30", a);
Teacher chenTeacher = new Teacher("陈老师", "32", b);
this.liTeacher=chenTeacher;
System.out.println("一次"+this.liTeacher);
chenTeacher.students=a;
System.out.println("二次"+this.liTeacher);
}
}
测试类解释:
对象赋值后,两个对象指向同一地址,chenTeacher修改内容后,liTeacher的内容也发生改变

4804

被折叠的 条评论
为什么被折叠?



