📅  最后修改于: 2023-12-03 15:42:22.274000             🧑  作者: Mango
该题是一道面向对象编程的综合题目,要求学生使用Java语言编写一段能完成指定需求的程序。
要求编写一个Java程序,实现以下需求:
Person
,其包含属性name
和age
,以及一个方法introduce()
,用于输出Person
对象的姓名和年龄。Teacher
,其继承Person
类,增加一个属性subject
,以及一个方法teach()
,用于输出教师教授的学科。Student
,其继承Person
类,增加一个属性grade
,以及一个方法study()
,用于输出学生所在年级。main
方法中,创建一个Teacher
对象和一个Student
对象,分别调用它们的introduce()
、teach()
、study()
方法。public class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public void introduce() {
System.out.println("姓名:" + this.name + "\n年龄:" + this.age);
}
}
public class Teacher extends Person {
private String subject;
public Teacher(String name, int age, String subject) {
super(name, age);
this.subject = subject;
}
public void teach() {
System.out.println("教授学科:" + this.subject);
}
}
public class Student extends Person {
private int grade;
public Student(String name, int age, int grade) {
super(name, age);
this.grade = grade;
}
public void study() {
System.out.println("所在年级:" + this.grade);
}
}
public class Main {
public static void main(String[] args) {
Teacher t = new Teacher("张三", 30, "数学");
t.introduce();
t.teach();
Student s = new Student("李四", 18, 1);
s.introduce();
s.study();
}
}
本题涉及到继承和多态等面向对象编程的基础知识,要求学生充分理解面向对象编程的概念和原则,并学会如何将面向对象编程思想应用于实际编程中。