为什么在父类方法中加上final, myeclipse在运行时报错“could not find main class.program will exit."

public class shuxi {

public static void main(String args[]){
A a=new B();
a.Ab();

}
}
class A{
public final void Ab(){
System.out.println("g");
}
}
class B extends A{
public void Ab(){
System.out.println("b");
}
}

因为 final定义的方法不可以被重写。
而你的子类进行了重写。
final修饰的类是不可以有子类的。修饰的方法不可以被重写。
你是才学习java的吧。 加油哦。
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-03-12
final标识的方法是不能被重写的,final标识的类也是不能继承的.这里你在B中重写了A的方法Ab()按照规定不允许!去掉final或者B中的方法该名字
第2个回答  2012-03-12
final 修饰的类不可以被继承,修饰的方法不可以被重写,修饰的属性不可以被改变
第3个回答  2012-03-12
final 的不可以被继承
相似回答
大家正在搜