令牌上的语法错误" super",无效名称,super.ToString()编译器错误

时间:2017-03-26 12:29:55

标签: java

你能帮帮我们吗?我现在有几个小时的问题,到处搜索,什么都没有,我知道这可能是重复的,但没有解决问题。调用基类方法根本不起作用!我错过了什么?

令牌上的语法错误"超级",无效名称

class Base
{
    @Override
    public String toString()
    {
        return "base";
    }
}
class SubClass extends Base
{
    @Override
    public String toString()
    {
        return super().toString();
    }
}

2 个答案:

答案 0 :(得分:1)

由于奇怪的Java语法,这不起作用。

您在构造函数中使用super(),括号是提供任何参数所必需的。

注意在你的情况下它是多余的,因为无论如何都会调用基类构造函数。

但是在重载方法中,您使用super而没有括号。在此上下文中,关键字代表基类的this指针。

答案 1 :(得分:-1)

它应该是super.toString();而不是super()。toString();