overload和override

2020-09-27 10:01:18 浏览数 (1)

说实话,这两个没有什么可比较的,概念相差那么大,但是很多笔试题之类的还喜欢考。只是长的像了一点而已。

overload是重载,对方法而言,同名不同参数,可以发生在当前类,也可以发生在父类和子类的身上。

override是覆盖,主要是发生在父类和子类的身上,子类继承了父类,然后写一个和父类同名,同参数的方法,那么父类的方法就被子类覆盖掉了。

但是,我总结了最重要的两点:

1.子类的方法的返回类型,参数,方法名称,要和父类方法的返回类型,参数,方法名完全一样,否则编译出错。

2.子类方法不能缩小父类方法的访问权限。(体现在修饰符上面,比如父类是public 的,子类变为了protected就不行了),但是反过来可以,就是说子类可以放大父类的方法的访问权限。

0 人点赞