Why is the sub class ID not extending from person1 superclass? cclass Person1{ p
ID: 3832721 • Letter: W
Question
Why is the sub class ID not extending from person1 superclass?
cclass Person1{
private String name = "";
private String campus = "";
private int birthYear = 0;
private int age = 0;
public final int CURRENT_YEAR = 2017;
public Person1(String name, String campus, int birthYear, int age){
this.name = name;
this.campus = campus;
this.birthYear = birthYear;
this.age = age;
}
public String getName(){
return name;
}
public String getCampus(){
return campus;
}
public int getBirthYear(){
return birthYear;
}
public int getAge(){
return age;
}
public void Display(){
}
public String toString(){
return name + " " + campus + " " + birthYear + " " + age + " " + CURRENT_YEAR;
}
}
public class ID extends Person1{
private String idNum = " ";
private String lvl = " "; //Student or Staff
public ID(){
}
public String getIdNum(){
return IdNum;
}
public void setIdNum(String idNum){
this.idNum = idNum;
}
public String getLvl(){
return lvl;
}
public void setLvl(String lvl){
this.lvl = lvl;
}
}
class TestPerson{
public static void main(String[] args){
person1 person = new person(JK);
System.out.println("A person " + person.toString);
}
}
Explanation / Answer
Hi,
Please see below the updated classes.
Please comment for any queries/feedbacks.
Thanks.
TestPerson.java
class Person1{
private String name = "";
private String campus = "";
private int birthYear = 0;
private int age = 0;
public final int CURRENT_YEAR = 2017;
public Person1(String name, String campus, int birthYear, int age){
this.name = name;
this.campus = campus;
this.birthYear = birthYear;
this.age = age;
}
public String getName(){
return name;
}
public String getCampus(){
return campus;
}
public int getBirthYear(){
return birthYear;
}
public int getAge(){
return age;
}
public void Display(){
}
public String toString(){
return name + " " + campus + " " + birthYear + " " + age + " " + CURRENT_YEAR;
}
}
class ID extends Person1{
private String idNum = " ";
private String lvl = " "; //Student or Staff
//Implicit super constructor Person1() is undefined. Must explicitly invoke another constructor
public ID(String idNum, String lvl,String name, String campus, int birthYear, int age){
super(name, campus, birthYear, age);
this.idNum =idNum;
this.lvl = lvl;
}
public String getIdNum(){
return idNum;
}
public void setIdNum(String idNum){
this.idNum = idNum;
}
public String getLvl(){
return lvl;
}
public void setLvl(String lvl){
this.lvl = lvl;
}
}
/**
* class TestPerson
* containsmain method
* @author
*
*/
public class TestPerson{
public static void main(String[] args){
//Creating new Person1 object and assigning it to Person1 reference
Person1 person1 = new Person1("JK","Campus1",2010,17);
//Creating new ID object and assigning it to Person1 reference
Person1 person2 = new ID("1001","Staff","Kevin","Campus1",2010,17); // Here ID class will get extended from Person1 class
System.out.println("A person " + person1.toString());
System.out.println("A person " + person2.toString());
}
}
Sample output:
A person JK Campus1 2010 17 2017
A person Kevin Campus1 2010 17 2017
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.