区别在于前者(Override)实现编译时多态性, 而后者(Overload)实现的是运行时的多态.
重载(Overload)
重载发生在一个类中, 重载的方法如果有不同的参数列表(参数类型不同, 参数个数不同或者二者都不同)则视为重载(指方法后圆括号内的形参)重载对返回类型没有要求.
重写(Override)
重写发生在子类与父类之间, 重写要求子类要重写的方法与父类被重写方法有相同的参数列表(指method方法名与方法名后圆括号内的形参)不管是method方法名还是圆括号内的形参都相同, 有兼容的返回类型(不管是向上转型还是向下转型), 比父类更好访问, 不能比父类被重写方法声明出更多的异常.
当然Overload与Oerride重写或重载的method名字都是相同