> 文章列表 > 方法覆盖与重载

方法覆盖与重载

方法覆盖与重载

方法的覆盖

(1)方法的覆盖是子类和父类之间的关系,是垂直关系,解决子类继承父类之后,可能父类的某一个方法不满足子类的具体特征,此时需要重新在子类中定义该方法,并重写方法体。

(2)覆盖只能由一个方法,或一对方法产生关系

(3)覆盖要求参数列表相同;重载要求参数列表不同。

(4)覆盖方法必须和父类中被覆盖方法具有相同的方法名称、输入参数和返回值类型。
(5)覆盖方法不能使用比父类中被覆盖方法更严格的访问权限。
(6)覆盖方法不能比父类中被覆盖方法抛出更多的异常

方法重载:

(1)在同一个类中,方法名相同,参数列表不同,参数个数不同,参数类型不同

(2)跟方法的修饰符、返回值类型、形参变量名、方法体都没有关系

        在继承和实现的前提下,具有相同的方法名,反参类型,更宽,更高的修饰符,

        参数相同,参数列表不同 

(3)同一个类中方法之间的关系,是水平关系

(4)是多个方法之间的关系。

(5)解决了同一个类中,相同的功能方法名不同的问题,既然是相同的功能,那么方法的名字就            应该相同
        规则:(两同一不同)
        同类中,方法名相同,方法参数列表不同(参数类型、参数个数、参数顺序)