一、学生类
Java 学生类是一个常用的对象类,封装了学生的信息,包括姓名、年龄、性别等属性。因为学生类涉及到对象和属性的封装,因此使用面向对象的思想来进行设计。
1、属性字段
public class Student { private String name; // 姓名 private int age; // 年龄 private char gender; // 性别 private String id; // 学号 private String major; // 专业 }
2、构造函数
public class Student { // 构造函数1:不带参数 public Student() {} // 构造函数2:带参数 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; } // 获取学号 public String getId() { return id; } // 获取专业 public String getMajor() { return major; } }
二、教师类
Java 教师类也是一个常用的对象类,封装了教师的信息,包括姓名、年龄、性别、工号、所教科目等属性。同样是因为教师类涉及到属性的封装,因此同样可以使用面向对象思想进行设计。
1、属性字段
public class Teacher { private String name; // 姓名 private int age; // 年龄 private char gender; // 性别 private String id; // 工号 private String subject; // 教授科目 }
2、构造函数
public class Teacher { // 构造函数1:不带参数 public Teacher() {} // 构造函数2:带参数 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; } }
三、学生类与教师类的继承关系
学生类和教师类都涉及到人员信息的封装,因此在面向对象的设计中可以使用继承关系来进行封装。
1、父类 Person
public class Person { protected String name; // 姓名 protected int age; // 年龄 protected char gender; // 性别 // 构造函数1:不带参数 public Person() {} // 构造函数2:带参数 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、学生类 Student 继承自 Person 父类
public class Student extends Person { private String id; // 学号 private String major; // 专业 // 构造函数1:不带参数 public Student() {} // 构造函数2:带参数 public Student(String name, int age, char gender, String id, String major) { super(name, age, gender); this.id = id; this.major = major; } // 获取学号 public String getId() { return id; } // 获取专业 public String getMajor() { return major; } }
3、教师类 Teacher 继承自 Person 父类
public class Teacher extends Person { private String id; // 工号 private String subject; // 教授科目 // 构造函数1:不带参数 public Teacher() {} // 构造函数2:带参数 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; } }
四、学生类与教师类的应用举例
学生类和教师类的应用非常广泛。我们可以在学校管理系统中使用学生类来完成学生信息的管理,而教师类则可以用来管理教师信息。下面给出一个简单的例子,使用学生类和教师类来表示学生和教师信息。
import java.util.ArrayList; public class SchoolManagementSystem { private ArrayList students; // 所有学生 private ArrayList teachers; // 所有教师 // 构造函数 public SchoolManagementSystem() { students = new ArrayList(); teachers = new ArrayList(); } // 添加学生 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); } // 获取所有学生 public ArrayList getAllStudents() { return students; } // 获取所有教师 public ArrayList getAllTeachers() { return teachers; } }