public class Person{
private String name;
private String surname;
private int age;
private String address;
Person(String n, String s, int a, String i){
name = n;
surname = s;
age = a;
address = i;
this.name = name; this.surname= surname;
this.age = age; this.address = address;
}
public String getName() {return name;}
public String getSurname() {return surname;}
public int getAge() {return age;}
public String getAddress() {return address;}
System.out.println(name+surname+age+address);
Person(){
this("Ryan","Borg",25,"Gudja");
}
}
public class Student extends Person{
int mark;
String credits;
Student(){
}
Student(String n, String s, int a, String i, int m, String c){
super(n, s, a, i);
mark = m;
credits = c;
public String getName() {return name;}
public String getSurname() {return surname;}
public int getAge() {return age;}
public String getAddress() {return address;}
public int getMark(){return mark;}
public String getCredits() {return credits;}
System.out.println(name+surname+age+address+mark+credits);
}
}
public class Teacher extends Person{
int salary;
String subject;
Teacher(){
}
Teacher(String n, String s, int a, String i, int sal, String sub){
super(n, s, a, i);
salary = sal;
subject = sub;
public String getName() {return name;}
public String getSurname() {return surname;}
public int getAge() {return age;}
public String getAddress() {return address;}
public int getSalary(){return salary;}
public String getSubject() {return subject;}
System.out.println(name+surname+age+address+salary+subject);
}
}
答案 0 :(得分:3)
答案 1 :(得分:0)
这是家庭作业吗?
无论如何,除了hvgotcodes之外,Person构造函数还有冗余代码。
name = n; this.name = name;不需要行。你只需要name = n;或者this.name = n;无论你的编码偏好是什么。
另外,为什么在类定义的中间有一个System.out.println?
为什么Person有默认构造函数创建默认Person?通常,这可以通过某种形式的Builder来完成,或者仅在测试代码中完成。对于生产代码没有价值。
子类没有将字段定义为private。它们只是默认的。这有明确的原因吗?他们应该是私人的。
答案 2 :(得分:0)
除了hvgotcodes建议覆盖toString()
而不是System.out.println()
答案 3 :(得分:0)
添加到hvgotcodes, 在Person classe的构造函数中,不需要将参数值赋给局部变量。
在person类中,你不能编写应该在某种方法中的sysout语句。
并且在Teacher ans Student的构造函数中,您已经定义了不应该的方法。并且不是必需的,因为它们存在于人物中。