重载和重写有什么区别
更新时间:2023-07-26 04:14:08
重载和重写属于Java面向对象中多态基础知识点,下面就给大家说说多态。
什么叫做多态?多态指的是在继承关系中子类继承父类的行为,这种行为在子类具体实现时可以是不一样的。
比如动物这一父类中有move()方法,在鸟类子类中和鱼类子类中move的实现是不一样的。
在Java中多态是通过重写(@Override:把父类的方法重新实现)和重载(@Overload:通过方法参数的不同在子类中来重新创建名字相同的方法)来实现的。
重写:重写(Override)是父类与子类之间多态性的一种表现。
如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Override)。
子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。
重载:重载(Overload)是一个类中多态性的一种表现。
如果在一个类中定义了多个同名的方法,它们参数列表不同,则称为方法的重载(Overload)。