定义一个人类,有姓名,年龄两个属性。在定义一个学生类用于继承人类,学生类除了继承人类的属性外,还有学生学号,姓名,班级所有课程等属性,在定义一个测试类,用于测试学生类。
给你写在一个Java文件里吧,比较方便,注释说明我都写在里面了
import java.util.ArrayList;
import java.util.List;
public class Test {
public static void main(String[] args) {
//定义课程
List<String> list=new ArrayList<>();
list.add("语文");
list.add("数学");
list.add("英语");
//创建学生对象,并赋值
Student student=new Student("张三",18,"20211010",list);
System.out.println(student);
}
}
//定义一个人类,有姓名,年龄两个属性
class Person {
private String name;
private int age;
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;
}
@Override
public String toString() {
return "Person{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
}
//定义一个学生类用于继承人类,学生类除了继承人类的属性外,还有学生学号,姓名,班级所有课程等属性
class Student extends Person{
//姓名年龄已经继承Person类,我们没必要再定义了
private String no;// 学号一般是长数字,或者英文前缀加数字,所以这里我们要给他String类型
private List<String> subjects;
public String getNo() {
return no;
}
public void setNo(String no) {
this.no = no;
}
public List<String> getSubjects() {
return subjects;
}
public void setSubjects(List<String> subjects) {
this.subjects = subjects;
}
//定义构造方法,方便Test测试类创建对象
public Student(String name,int age,String no, List<String> subjects) {
this.no = no;
this.subjects = subjects;
//我们是继承父类名字年龄,父类里的是私有属性如果要赋值,就需要set方法,本类私有属性大可不必
this.setName(name);
this.setAge(age);
}
@Override
public String toString() {
return "Student{" +
"no='" + no + '\'' +
", subjects=" + subjects +
'}';
}
}
测试结果如下
public class Person {
private String name;
private Integer age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
}
import java.util.List;
public class Student extends Person{
private Integer no;
private String name;
private List<String> subjects;
public Integer getNo() {
return no;
}
public void setNo(Integer no) {
this.no = no;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public List<String> getSubjects() {
return subjects;
}
public void setSubjects(List<String> subjects) {
this.subjects = subjects;
}
}
import java.util.ArrayList;
import java.util.List;
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
Student zhang3 = new Student();
zhang3.setName("张三");
zhang3.setAge(21);
zhang3.setNo(38);
List<String> subjects = new ArrayList<String>();
subjects.add("语文");
subjects.add("数学");
zhang3.setSubjects(subjects);
System.out.println(zhang3.getName());
//...其它输出
}
}