当子类中的方法声明【方法的返回值类型,方法名和参数列表】与父类中的方法声明一致的时候,只是方法的实现不一样,这个现象叫做方法的重写【方法的覆盖】。
class Fu5{
public void fun1(){
System.out.println("这是父类中的fun1方法");
}
}
class Zi5 extends Fu5{
@Override
public void fun1(){
System.out.println("这是子类中的fun1方法");
}
public void fun2(){
System.out.println("这是子类中的fun2方法");
}
}
public class ExtendsDemo7 {
public static void main(String[] args) {
Zi5 zi5 = new Zi5();
zi5.fun2();
zi5.fun1();
}
}
重写所需要注意事项:
1、子类无法重写父类中的私有方法
2、子类无法继承且重写父类中的静态方法
3、子类重写方法的权限,要大于等于父类的方法权限,推荐在没有要求的情况下,保持和父亲一致的权限就好了
class Fu5{
public void fun1(){
System.out.println("这是父类中的fun1方法");
}
}
class Zi5 extends Fu5{
@Override
public void fun1(){
System.out.println("这是子类中的fun1方法");
}
public void fun2(){
System.out.println("这是子类中的fun2方法");
}
}
public class ExtendsDemo7 {
public static void main(String[] args) {
Zi5 zi5 = new Zi5();
zi5.fun2();
zi5.fun1();
}
}
标签:fun1,覆盖,fun2,继承,子类,void,java,方法,public
From: https://www.cnblogs.com/ndmtzwdx/p/18430135