重写

发生在父类子类中,若子类方法想要和父类方法构成重写关系,则它的方法名、参数列表必须和父类方法相同,另外,返回值要小于等于父类方法,抛出的异常要小于等于父类方法,访问修饰符要大于等于父类方法。另外如果父类方法的访问修饰符为private,则子类不能对其重写。
另构造方法不能重写,因为构造方法需要和类保持同名,而重写的要求是子类方法要和父类方法保持同名,这与构造方法的要求是矛盾的。


重载

重载发生在同一个类中,若多个方法之间方法名相同、参数列表不同,则它们构成重载的关系。重载与方法的返回值以及访问修饰符无关,即重载的方法不能根据返回类型进行区分。