实体类、列表 和 管理类

实体类

首先要有实体类,用来保存数据。用于表示领域信息,状态信息、动作信息、环境变量信息等。比如 Student、Teacher、Status 等

实体类列表

只有一个实体类往往缺乏扩展性,而拥有一个实体集合类,则可以兼容单个实体,同时拥有扩展性,所以需要一个实体类列表。比如 ListList 等。

对列表的管理(增删改查)

列表往往无法管理自身,只能被调用者管理,但是将这种管理权交给调用者是不安全的,所以需要一个统一管理的地方,并对外提供管理接口。所以最终需要一个管理类。比如 StudentManager、TeacherManager。里面持有实体类列表的引用。所以最终实体类的情况如下所示

public final class StudentManager {
	private List<Student> mStudentList = new ArrayList<>();

	// 增加
	public void addStudent(Student student) {
		mStudentList.add(student);
	}
	
	// 删除
	public void delStudent(Student student) {
		mStudentList.remove(student);
	}
	
	// 修改
	public void updateStudent(int index, Student newStudent) {
		Student stu = mStudentList.get(index);
		stu.update(newStudent);
	}
	
	// 查询
	public void searchStudent(int stuId) {
		for (Student stu : mStudentList) {
            if (stuId == stu.getId()) {
                return stu;
            }
        }
		return null;
	}
}

你可能感兴趣的:(java,java,开发语言)