基本介绍
重写(Override):是指子类中有一个方法和父类的某个方法的名称、返回类型、参数完全一样,那么我们就说子类的这个方法覆盖了父类的方法
即在Java中,子类在重写父类的方法时,必须与父类方法的修饰符、返回值类型、方法名(参数列表) 要完全一致
public class Override01 { public static void main(String[] args) { Dog dog = new Dog(); dog.cry(); } } class Animal{ public void cry(){ System.out.println("Animal一直在哭。。。"); } } class Dog extends Animal{ //方法重写 //1.子类方法的参数,方法名称,要和父类方法的参数,方法名称完全一样 //2.子类方法的返回类型和父类方法的返回类型一样,或者是父类返回类型的子类 //3.子类方法不能缩小父类方法的访问权限 public void cry(){ System.out.println("Dog一直在哭。。。"); } }
重写(Override)和 重载(Overload)的区别
1. 重写(Override)
重写是子类重写父类的方法,方法的名称、返回类型、参数列表(参数的类型和个数)完全一样。
重写是动态绑定,即在编译时不能确定具体的调用方法,而在程序运行时,才能确定具体的被调用的方法。
2. 重载(Overload)
重载是在当前类中,方法的名称一样,但返回类型,参数列表(参数的类型和个数)不同。
重载是静态绑定,即在编译时就根据实参类型确定了调用哪个方法。
标签:类型,19,重写,面向对象,子类,Override,父类,方法 From: https://www.cnblogs.com/REN-Murphy/p/17640999.html