Nul*_*ter 2 java oop inheritance
任何人都可以解释,为什么这在eclipse中显示错误,但运行成功没有任何错误.我已粘贴下面的代码.
家长班:
public class Parent {
/*Parent class method*/
public void show() {
System.out.println("Parent class show called");
}
}
Run Code Online (Sandbox Code Playgroud)
儿童班:
public class Child extends Parent {
/* Child class overridden method*/
private void show() {
// this line show error in eclipse
System.out.println("Child class show called ");
}
public static void main(String[] args) {
Parent p = new Child();
p.show();
}
}
Run Code Online (Sandbox Code Playgroud)
OutPut是:父类显示调用
您不能通过继承来降低方法的可见性.
因此,子类中的可见性必须public不是private.
public class Child extends Parent{
/* Child class overridden method*/
public void show(){ // this line show error in eclipse
System.out.println("Child class show called ");
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Parent p = new Child();
p.show();
}
}
Run Code Online (Sandbox Code Playgroud)