方法重载
方法重载是在同一个类里面,有多个相同名字定义的方法,但是方法的参数不同,可以是参数类型不同、个数不同、顺序不同
- 编译器根据方法的参数列表区别不同的重载方法,是编译时多态。即在编译的阶段,编译器就能够确定调用哪个方法
- 重载方法的返回值类型可以相同也可以不相同,同时方法的访问修饰符可以相同也可以不相同。
方法重写
方法重写是发生在子类和父类之间的,重写的方法返回值类型和参数列表都不能够改变
- 重写是实现多态的一种方式,主要是表现子类能够提供特定的实现机制
- 子类方法不能抛出比父类方法更多的异常,可以不抛出异常或者抛出与父类相同的异常
- 重写的方法不能比被重写的方法有更低的访问权限
- 重写是运行时多态,即只有在程序运行时,才能够确定调用哪个方法