java继承抽象类Person,显示学生成绩
时间: 2024-09-28 16:14:57 浏览: 32
第七章实验.docx
在Java中,如果有一个抽象类`Person`,它包含了基础的个人信息属性,比如姓名、年龄等,但是没有提供具体的分数计算方法,因为抽象类可以包含抽象方法,即没有实现的具体方法。假设`Score`是一个抽象方法,表示计算成绩的行为。
为了创建一个特定于学生的子类来显示成绩,比如`Student`,你可以这样做:
```java
abstract class Person {
String name;
int age;
// 抽象方法,需要在子类中实现
abstract double calculateScore();
public void displayScore() {
if (calculateScore() != 0) {
System.out.println("学生 " + name + " 的成绩是:" + calculateScore());
} else {
System.out.println(name + " 没有设置成绩");
}
}
}
class Student extends Person {
private double grade;
@Override
double calculateScore() {
return grade; // 这里假设grade就是学生的真实成绩
}
public void setGrade(double grade) {
this.grade = grade;
}
}
```
现在,你可以创建一个`Student`实例,并通过`displayScore()`方法来显示他们的成绩:
```java
public static void main(String[] args) {
Student student = new Student();
student.name = "小明";
student.age = 18;
student.setGrade(95.5); // 设置成绩
student.displayScore(); // 输出小明的成绩
}
```
阅读全文