读书人

java继承中的构造方法的有关问题

发布时间: 2013-11-16 23:15:33 作者: rapoo

java继承中的构造方法的问题
代码如下:


class Person
{
public String name;
public int age;

// Person() {}

Person(String name,int age) {
setPerson(name,age);
}

public void setPerson(String name,int age) {
this.name = name;
this.age = age;
}

String getname() {
return name;
}

int getage() {
return age;
}
}

class Student extends Person {
String name;
int age;
String school;
int QQ;

Student (String name, int age, String school, int QQ) {
// super(name,age);
setStudent12(name,age,school, QQ);
}

void setStudent12(String name, int age, String school, int QQ) {
this.name = name;
this.age = age;
this.school = school;
this.QQ = QQ;
}

String getschool() {
return school;
}

int getQQ() {
return QQ;
}
}

public class STUdent
{
public static void main(String[] args)
{
Student S = new Student("李华",23,"hbmy",20);
System.out.println(S.getname()+S.getage()+S.getschool()+S.getQQ());
}
}



---------- 编译 ----------
STUdent.java:32: 错误: 无法将类 Person中的构造器 Person应用到给定类型;
Student (String name, int age, String school, int QQ) {
^
需要: String,int
找到: 没有参数
原因: 实际参数列表和形式参数列表长度不同
1 个错误

Output completed (0 sec consumed) - Normal Termination
我一直是这么理解的,不知道其他人怎么看
[解决办法]
子类构造的时候先调用父类构造函数,没显示调用就是调用的父类无餐那个 你这两个// 自己研究下

读书人网 >J2SE开发

热点推荐