Java子类继承该怎么写

一、定义一个Person类,有姓名、性别、联系方式,通过构造函数对三个属性进行初始化,定义一个方法显示基本信息;再定义Student类继承Person类,Student类中有个属性:学号,通过构造函数对属性进行初始化,在子类中定义一个方法对父类方法进行重写以实现多态,最后通过测试类进行测试验证。
package chap04;

class Person {
public String name;
public String sex;
public String contact;
public Person(String name01,String sex01,String contact01){
name=name01;
sex=sex01;
contact=contact01;}
public void display(){
System.out.println("姓名:"+name);
System.out.println("性别:"+sex);
System.out.println("联系方式:"+contact);

}

}
class Student extends Person{
String sno;
public Student(){
super (name);
System.out.println("该学生的学号为:"+sno);
}
}
package chap04;

public class TestPerson {

public static void main(String[] args) {
    // TODO Auto-generated method stub
    Person peter=new Person("peter","男","123456");
    peter.display();
    //peter.contact
            
}

}
这是我写的一小部分,还出错了

class Person {
    public String name;
    public String sex;
    public String contact;
    public Person(String name,String sex,String contact){
        this.name = name;
        this.sex = sex;
        this.contact = contact;
    }
    public void display(){
        System.out.println("姓名:"+name);
        System.out.println("性别:"+sex);
        System.out.println("联系方式:"+contact);

    }
}
class Student extends Person{
    String sno;

    public Student(String sno, String name, String sex, String contact){
        super(name, sex, contact);
        this.sno = sno;
    }

    public void display(){
        System.out.println("学号:" + sno);
        System.out.println("姓名:" + name);
        System.out.println("性别:" + sex);
        System.out.println("联系方式:" + contact);
    }
}

public class TestPerson {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Person peter=new Person("peter","男","123456");
        peter.display();
        Student stu = new Student("101", "peter","男","123456");
        stu.display();
    }
}

上面那位大佬写的很详细了

class Person {
public String name;
public String sex;
public String contact;
public Person(String name,String sex,String contact){
this.name = name;
this.sex = sex;
this.contact = contact;
}
public void display(){
System.out.println("姓名:"+name);
System.out.println("性别:"+sex);
System.out.println("联系方式:"+contact);

}

}
class Student extends Person{
String sno;

public Student(String sno, String name, String sex, String contact){
    super(name, sex, contact);
    this.sno = sno;
}

public void display(){
    System.out.println("学号:" + sno);
    System.out.println("姓名:" + name);
    System.out.println("性别:" + sex);
    System.out.println("联系方式:" + contact);
}

}

public class TestPerson {

public static void main(String[] args) {
    // TODO Auto-generated method stub
    Person peter=new Person("peter","男","123456");
    peter.display();
    Student stu = new Student("101", "peter","男","123456");
    stu.display();
}

}