重写:子类中重写了父类的同名方法(方法名,参数),则为重写。
- 返回值??
- 重写返回值也必须相同。因为就是把父类的方法重新写一遍。只不过是方法中的实现是不同的。
重载:是同一个类中的方法名相同,参数列表不同,即为重载。
重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。
**注意,返回值类型不能作为重载的区分方法!因为,一个对象调用方法是可以忽视返回值的,如果两个函数除了返回值不同,其他的都相同,那么,虚拟机就会混乱。所以,这样是不被编译通过的。例如
Son 类里面有两个方法都是fun();只是方法返回值不同。
Son son = new Son();
son.fun();//这里对象son只调用了方法,不看返回值,所以虚拟机就会混乱,不知道是哪个方法
**