public class StuClass [li]{ private Student[] stus; [li] private int number; [li] public StuClass() { [li] stus = new Student[50]; number = 0; [li] } [li] public void addStu(String name) { [li] stus[number] = Student.createStudent(name); number ++; [li] } [li]} [li] [li]public class Student { [li] private String stuNum; private String name; [li] private static int num = 0; [li] public static Student createStudent(String name) { [li] String stuNum; String numString; [li] num ++; if (num < 10) numString = "00" + num; [li] else if (num < 100) numString = "0" + num; else numString = "" + num; [li] stuNum = "JB09" + numString; [li] return new Student(stuNum, name); } [li] private Student(String stuNum, String name) [li] { this.stuNum = stuNum; [li] this.name = name; } [li] [li]} [/li]
[/pre]//以下是课堂的笔记:
//1.stuNum should be created by CLASS_Student(it's okay that CLASS_StuClass arrange the stuNum, but stuNum is the attribute of student, it's better to create stuNum in CLASS_Student.)
//2.avoid the mistake made by OBJECT_StuClass(if delete the method createStudent, then the constructor can be public, but if CLASS_StuClass' OBJECT have wrong operation, stuNum may wrong,too).