方法重写
在Java继承中,子类可以继承父类的方法。当子类需要对父类某个方法所实现的功能进行修改,就需要进行方法重写,也称为方法覆盖。
方法重写遵循“两同两小一大”原则:
方法名相同,参数列表相同
子类返回类型≤父类返回类型
子类抛出异常≤父类抛出异常
子类访问权限≥父类访问权限
方法重载
一个类中定义多个同名的方法,用于创建完成一组任务相似但参数的类型或参数的个数不同的方法。
方法重载要求 方法名必须相同,参数列表必须不同。与返回值、修饰符无关。
重写和重载是Java语言多态性的两种表现方式。
什么是多态
同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。
面向对象方法的多态性是指针对一消息,不同的对象可以以适合自身的方式加以响应。
在重写中,动态单分配,根据new的类型确定对象,从而确定调用的方法。
在重载中,静态多分配,根据静态类型确定对象,调用方法时通过传递给它们的不同个数和类型的参数来决定具体执行哪个方法。