JAVA基础重载与重写的自己理解

重写,也可叫覆盖,是子类对父类中的方法的重新实现。

在子类中重写的父类方法,访问权限不能比父类中的该方法更低。命名,返回结果类型,入参都要跟父类中的该方法一样。抛出的异常类型,不能比父类抛出异常类型更广泛(子类抛出的异常在父类中没有)。

在子类中只能重写能从父类中继承的方法。而,父类中的以final或者private修饰的方法只能调用,不能被重写。

声明为static类型的方法,不能被重写,但是能被重新声明。

当在子类需要调用父类中被重写的方法,只能使用super关键字。直接调用该方法的话,只能调用到子类中的该方法。因为子类中存在该方法,不会再检索父类。

父类申请变量指向子类实例,不能调用父类中不存在的变量或者方法。

 Animal b = new Dog();Animal b = new Dog();

重载,是指,在同一个类中有两个相同命名的方法。因为返回类型不能确认调用的方法,就需要用传入的参数来区分调用的方法,可以是参数的个数不同,可以是参数的类型顺序不同。所以返回类型,修饰类型,可相同可不同。

重载和重写显示了java中的多太特性。

发布了15 篇原创文章 · 获赞 0 · 访问量 1069

猜你喜欢

转载自blog.csdn.net/ma316110/article/details/79447096