Syntax error on token “super”, invalid Name
我想写一个本科生班,扩大学生的范围。
这是基础班(学生)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | public class Student{ private String name; private int id; private double gpa; public Student(){ } public Student(int id, String name, double gpa){ this.id = id; this.name = name; this.gpa = gpa; } public Student(int id, double gpa){ this(id,"", gpa); } public String getName(){ return name; } public int getId(){ return id; } public double getGPA(){ return gpa; } public void setName(String newName){ this.name = newName; } @Override public String toString(){ return"Student: ID:" + id +" Name:" + name +" GPA:" + gpa; } } |
这里是派生类(本科生)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
我面临的问题是日食显示我本科生ToString方法的一个错误就在super()处调用错误说明
"Syntax error on token"super", invalid Name"
我能帮个忙吗?
型
只允许在构造函数中调用
1 2 3 4 |
这是EDOCX1"1"关键字的语法。1.用于调用超类构造函数的是
super(); //the superclass no-argument constructor is called super(parameter list);//the superclass constructor with a matching parameter list is called
号
2.调用超类成员是
super.fieldName;//here member is field of super class super.methodName();//here member is method of super class
号
型
调用超类方法时,使用语法
1 | {return super.toString() +" the year is :" + year;} |
这与从子类构造函数中调用超类构造函数不同;这种语法只需要关键字
型