当前位置:网站首页>重写?重载?你晕了吗?

重写?重载?你晕了吗?

2022-06-22 09:10:00 C_x_330

public class CCC {
    public static void main(String[] args) {
    }

}
class A{
    public A foo() {
        return this;
    }
}
class B extends A {
    public A foo(){
        return this;
    }
}
class C extends B {
    public void foo(){}
    // 方法名一样,参数列表也一样->不满足重载;方法名一样,返回类型不同,不满足重写->报错

    public int foo(){return 1;}
    // 方法名一样,参数列表也一样->不满足重载;方法名一样,返回类型不同,不满足重写->报错

    public A foo(){return A;}
    // 方法名一样,参数列表也一样->不满足重载;方法名一样,返回类型小于等于父类返回类型,满足重写;
    // 但是格式错误 应该 return new A();

    public A foo(B b){return b;}
    // 方法名一样,参数列表不一样->满足重载;参数类型不同,所以不是重写;
}

方法重写 

重写 要求两同两小一大原则, 方法名相同

原网站

版权声明
本文为[C_x_330]所创,转载请带上原文链接,感谢
https://blog.csdn.net/C_x_330/article/details/125384614