重载(overload)和重写(override)的区别
方法的重载和重写都是实现多态的方式。
区别:
1.重载实现的是编译时的多态性,而重写实现的是运行时的多态性。
2.重载发生在一个类中,方法名相同参数列表不同(参数类型不同、参数个数不同、顺序不同)则称之为发生了方法的重载,或两个方法互为重载。重写发生在继承过程中,子类继承父类公开的方法,不能满足子类的需求时,将父类的方法进行重写
方法重载的规则:
1.方法名一致,参数列表中参数的顺序,类型,个数不同。
2.重载与方法的返回值无关,存在于父类和子类,同类中。
3.可以抛出不同的异常,可以有不同修饰符。
方法重写的规则:
1.返回值类型、方法名、参数列表不能修改
2.方法体根据需求重写 修饰符访问范围大于或等于父类