本帖最后由 fso918 于 2011-10-18 19:03 编辑
赵江锋 发表于 2011-10-18 15:50
static 方法不能被重写(override)。
如果你编译并运行这段代码,你会发现输出文本Hello,Tom
因为名字叫sa ...
父类:
package com.super;
public class Super{
static String s = "Tom";
public static void say(){
System.out.println("Hello," + s);
}
}
子类:
package com.subclass;
public class Sub extends Super{
public static void say(){
System.out.println("Hi," + s);
}
}
测试类:
class Test{
public static void main(String[] args){
Super s = new Sub();
s.say();
}
}
这段代码呢?出错了。。。
这段代码不能通过编译。有人能说下原因吗? |