重写(Overriding):
重写在JAVA中表示:在继承关系下(不同类中),父类有一个方法,但是可能这个方法的功能不够多,子类想加点料,这个时候子类就需要重写父类的方法。父类的方法和子类重写的方法需要方法名、参数和返回类型都得一样,只是具体实现的内容不一样。还有一点就是子类重写的方法一定不可以做更严格的限制,但是可以降低限制,也就是说子类必须要保证权限大于等于父类权限。
注意: (1)子类中不能重写父类中的final方法
(2)子类中必须重写父类中的abstract方法
重载(Overloading):
重载是指在同一个类中,有多个方法具有相同的方法名,但是方法的参数不一样,包括参数类型、参数个数(可以没有参数),这些都构成方法的重载,重载主要是为多态服务的,运行时在决定调用使用哪个同名方法。
注意:方法的返回值类型不作为区分重载的要素。不同返回值类型无法判断两个函数是否构成重载。