您的位置:首页 > 其它

静态方法不能使用 super 调用父类静态方法

2016-04-28 22:13 441 查看
public class SuperCalc {
protected static int multily(int a, int b) {
return a * b;
}
}


public class SubCalc extends SuperCalc {
public static int multiply(int a, int b) {
int c = super.multiply(a, b);
return c;
}
}


错误提示:

super 处:
Cannot use super in a static context


意思便是不能用 super 调用静态的上下文,比如静态方法和静态成员变量

super 可以调用的是父类的成员函数(即非静态的)和成员变量(即非静态的),需要调用父类的类函数和类变量则需要用父类名调用.

在例子中:

int c=super.multiply(a,b);


应该改为

int c=SuperCaic.multiply(a,b);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  静态方法 继承