Java provides built-in support for subtyping with its extends keyword, but it does not support multiple inheritance. Consider the following information design model:
First, we define the superclass Person. Then, we define the subclass Student and its subtype relationship to Person by means of the extends keyword:
public class Person {
private String firstName;
private String lastName;
...
}
public class Student extends Person {
private int studentNo;
public Student( String first, String last, int studNo) {
super( firstName, lastName);
this.setStudNo( studNo);
}
...
}Notice that in the Student class, we define a constructor with all the parameters required to create an instance of Student. In this subclass constructor we use super to invoke the constructor of the superclass Person.