JAVA设计学生类student,继承类person,显示姓名和成绩
时间: 2024-05-10 14:14:22 浏览: 166
可以用以下代码实现:
```
public class Person {
private String name;
public Person(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
public class Student extends Person {
private double score;
public Student(String name, double score) {
super(name);
this.score = score;
}
public double getScore() {
return score;
}
public void display() {
System.out.println("姓名:" + getName() + " 成绩:" + getScore());
}
}
// 测试代码
Student student = new Student("张三", 90);
student.display();
```
输出结果为:
```
姓名:张三 成绩:90.0
```
相关问题
java 定义Person类和Student类,Student类继承Person类,定义测试类输出学生信息。(继承关系的定义格式练习
以下是Java定义Person类和Student类,Student类继承Person类,以及测试类输出学生信息的代码:
```java
// 定义Person类
public class Person {
private String name;
private int age;
// 构造方法
public Person(String name, int age) {
this.name = name;
this.age = age;
}
// getter和setter方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
// 定义Student类,继承Person类
public class Student extends Person {
private String school;
// 构造方法
public Student(String name, int age, String school) {
super(name, age);
this.school = school;
}
// getter和setter方法
public String getSchool() {
return school;
}
public void setSchool(String school) {
this.school = school;
}
}
// 定义测试类
public class Test {
public static void main(String[] args) {
Student student = new Student("小明", 18, "清华大学");
System.out.println("姓名:" + student.getName());
System.out.println("年龄:" + student.getAge());
System.out.println("学校:" + student.getSchool());
}
}
```
输出结果为:
```
姓名:小明
年龄:18
学校:清华大学
```
在定义继承关系时,使用关键字`extends`表示继承,子类中使用`super`关键字来调用父类的构造方法。
java继承抽象类Person,显示学生成绩
在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(); // 输出小明的成绩
}
```
阅读全文