问答详情
源自:11-2 代码实现

JAVA里面的重写和覆盖到底是不是一回事?

重载是同一个类中,出现多个方法名相同,但参数个数或参数类型不同的方法。

那么重写和覆盖有什么区别么?

提问者:72fc5c0f8317 2017-10-31 23:14

个回答

  • 给自己加油
    2017-11-12 13:31:29
    已采纳

    重写即为覆盖

    (1)子类继承父类就会有父类的所有属性与方法

    1)第一种情况,如果你对父类的方法满意,则子类对象可以直接调用父类的方法,此时不存在重写(覆盖);

    2)第二种情况,如果你对父类的方法不满意,子类是可以重写(覆盖)父类继承的方法的,此时,子类再次调用这个方法的时候,是优先调用子类的方法的;但是此时你想继续调用父类的方法,那就是使用super关键字来实现了。

  • 72fc5c0f8317
    2017-10-31 23:18:47

    重写是子类方法名和父类继承的方法名同,参数类型数量也要同,返回类型同?
    当子类继承父类中所有可能被子类访问的成员方法时,如果子类的方法名与父类的方法名相同,那么子类就不能继承父类的方法,而是子类的方法覆盖了父类的方法,那么子类也要求参数类型和数量也要跟被覆盖的父类方法同么?