5.Person父类的定义及使用,Person类中有私有属性name、age、sex与getInfo()方法,请设计Person类,学生类继承父类,重写方法 ,并同样采用无参、有参实例化对象并使用,最终输出两个学生对象的信息
时间: 2024-11-24 13:42:03 浏览: 11
==操作符与equals方法-尚硅谷_佟刚_Java类设计
首先,我们创建一个名为`Person`的父类,包含私有属性`name`、`age`和`sex`,以及一个公共方法`getInfo()`用于获取信息。
```java
public class Person {
private String name;
private int age;
private String sex;
// 构造函数
public Person(String name, int age, String sex) {
this.name = name;
this.age = age;
this.sex = sex;
}
// 获取信息的方法
public void getInfo() {
System.out.println("Name: " + name + ", Age: " + age + ", Sex: " + sex);
}
}
```
接下来,我们创建一个名为`Student`的子类,它继承自`Person`类,并重写了`getInfo()`方法:
```java
public class Student extends Person {
// 学生特有的属性,例如studentId
private String studentId;
// 重写父类的getInfo()方法
@Override
public void getInfo() {
super.getInfo();
System.out.println("Student ID: " + studentId);
}
}
```
现在我们可以实例化两个`Student`对象,并使用它们:
```java
// 使用无参构造函数创建对象
Student student1 = new Student(); // 这里需要显式指定默认值,如:student1 = new Student("", 0, "", "");
student1.setName("Tom"); // 设置属性
student1.setAge(18); // 设置年龄
student1.setSex("Male");
student1.setStudentId("S001");
// 使用有参构造函数创建对象
Student student2 = new Student("Jerry", 19, "Female", "S002");
// 调用getInfo()方法获取信息
student1.getInfo();
student2.getInfo();
```
运行上述代码,会输出每个学生的姓名、年龄、性别和学号。
阅读全文