一、學(xué)生類
Java 學(xué)生類是一個常用的對象類,封裝了學(xué)生的信息,包括姓名、年齡、性別等屬性。因?yàn)閷W(xué)生類涉及到對象和屬性的封裝,因此使用面向?qū)ο蟮乃枷雭磉M(jìn)行設(shè)計。
1、屬性字段
public class Student {
private String name; // 姓名
private int age; // 年齡
private char gender; // 性別
private String id; // 學(xué)號
private String major; // 專業(yè)
}
2、構(gòu)造函數(shù)
public class Student {
// 構(gòu)造函數(shù)1:不帶參數(shù)
public Student() {}
// 構(gòu)造函數(shù)2:帶參數(shù)
public Student(String name, int age, char gender, String id, String major) {
this.name = name;
this.age = age;
this.gender = gender;
this.id = id;
this.major = major;
}
}
3、獲取屬性方法
public class Student {
// 獲取姓名
public String getName() {
return name;
}
// 獲取年齡
public int getAge() {
return age;
}
// 獲取性別
public char getGender() {
return gender;
}
// 獲取學(xué)號
public String getId() {
return id;
}
// 獲取專業(yè)
public String getMajor() {
return major;
}
}
二、教師類
Java 教師類也是一個常用的對象類,封裝了教師的信息,包括姓名、年齡、性別、工號、所教科目等屬性。同樣是因?yàn)榻處燁惿婕暗綄傩缘姆庋b,因此同樣可以使用面向?qū)ο笏枷脒M(jìn)行設(shè)計。
1、屬性字段
public class Teacher {
private String name; // 姓名
private int age; // 年齡
private char gender; // 性別
private String id; // 工號
private String subject; // 教授科目
}
2、構(gòu)造函數(shù)
public class Teacher {
// 構(gòu)造函數(shù)1:不帶參數(shù)
public Teacher() {}
// 構(gòu)造函數(shù)2:帶參數(shù)
public Teacher(String name, int age, char gender, String id, String subject) {
this.name = name;
this.age = age;
this.gender = gender;
this.id = id;
this.subject = subject;
}
}
3、獲取屬性方法
public class Teacher {
// 獲取姓名
public String getName() {
return name;
}
// 獲取年齡
public int getAge() {
return age;
}
// 獲取性別
public char getGender() {
return gender;
}
// 獲取工號
public String getId() {
return id;
}
// 獲取教授科目
public String getSubject() {
return subject;
}
}
三、學(xué)生類與教師類的繼承關(guān)系
學(xué)生類和教師類都涉及到人員信息的封裝,因此在面向?qū)ο蟮脑O(shè)計中可以使用繼承關(guān)系來進(jìn)行封裝。
1、父類 Person
public class Person {
protected String name; // 姓名
protected int age; // 年齡
protected char gender; // 性別
// 構(gòu)造函數(shù)1:不帶參數(shù)
public Person() {}
// 構(gòu)造函數(shù)2:帶參數(shù)
public Person(String name, int age, char gender) {
this.name = name;
this.age = age;
this.gender = gender;
}
// 獲取姓名
public String getName() {
return name;
}
// 獲取年齡
public int getAge() {
return age;
}
// 獲取性別
public char getGender() {
return gender;
}
}
2、學(xué)生類 Student 繼承自 Person 父類
public class Student extends Person {
private String id; // 學(xué)號
private String major; // 專業(yè)
// 構(gòu)造函數(shù)1:不帶參數(shù)
public Student() {}
// 構(gòu)造函數(shù)2:帶參數(shù)
public Student(String name, int age, char gender, String id, String major) {
super(name, age, gender);
this.id = id;
this.major = major;
}
// 獲取學(xué)號
public String getId() {
return id;
}
// 獲取專業(yè)
public String getMajor() {
return major;
}
}
3、教師類 Teacher 繼承自 Person 父類
public class Teacher extends Person {
private String id; // 工號
private String subject; // 教授科目
// 構(gòu)造函數(shù)1:不帶參數(shù)
public Teacher() {}
// 構(gòu)造函數(shù)2:帶參數(shù)
public Teacher(String name, int age, char gender, String id, String subject) {
super(name, age, gender);
this.id = id;
this.subject = subject;
}
// 獲取工號
public String getId() {
return id;
}
// 獲取教授科目
public String getSubject() {
return subject;
}
}
四、學(xué)生類與教師類的應(yīng)用舉例
學(xué)生類和教師類的應(yīng)用非常廣泛。我們可以在學(xué)校管理系統(tǒng)中使用學(xué)生類來完成學(xué)生信息的管理,而教師類則可以用來管理教師信息。下面給出一個簡單的例子,使用學(xué)生類和教師類來表示學(xué)生和教師信息。
import java.util.ArrayList;
public class SchoolManagementSystem {
private ArrayList students; // 所有學(xué)生
private ArrayList teachers; // 所有教師
// 構(gòu)造函數(shù)
public SchoolManagementSystem() {
students = new ArrayList();
teachers = new ArrayList();
}
// 添加學(xué)生
public void addStudent(String name, int age, char gender, String id, String major) {
Student student = new Student(name, age, gender, id, major);
students.add(student);
}
// 添加教師
public void addTeacher(String name, int age, char gender, String id, String subject) {
Teacher teacher = new Teacher(name, age, gender, id, subject);
teachers.add(teacher);
}
// 獲取所有學(xué)生
public ArrayList getAllStudents() {
return students;
}
// 獲取所有教師
public ArrayList getAllTeachers() {
return teachers;
}
}