[Thinking in Java]

来源:互联网 发布:数据流量怎么打开不了 编辑:程序博客网 时间:2024/05/01 04:08

三个概念:重写、覆盖、重载的区分:

重写 = 覆盖(Override),是指我们在子类中,构造和父类完全一样的函数构造完全一样的函数。覆盖有以下原则:

1、三同原则:同方法名、同返回类型、同参数表。
2、子类中的覆盖方法不能使用比父类中被覆盖的方法更严格的访问权限(public>protected>default>private)。
3、如需使用父类中原有的方法,可使用super关键字,该关键字引用了当前类父类的方法。

覆盖指的是基类和导出类之间的关系。

重载(Overload),指的是我们定义多个名称相同,但是函数签名(参数表)不同的函数。返回类型不能作为重载的依据。如果两个函数仅仅只有返回值不同,参数相同,那么在我们调用的时候编译器是无法分辨我们需要用哪个函数的。重载的依据是要能够让编译器判断我们所想要的函数是什么。

0 0