当前位置:首页 >  热点文

overload和override区别

时间:2024-07-11 03:01:20

热点文

导读:overload和override区别  overload和override是Java中的两种方法,它们的区别如下: 1. overload(重载):表示同一个类中可以有多个名称相同但参数列表不同的方......

overload和override区别 

overload和override是Java中的两种方法,它们的区别如下:

1. overload(重载):表示同一个类中可以有多个名称相同但参数列表不同的方法。通过参数的类型或个数不同而实现的多态机制,是一种静态的绑定机制,即在编译时已经知道具体执行的是哪个代码段。

2. override(覆盖):表示子类中的方法可以与父类中的某个方法的名称和参数完全相同,通过子类创建的实例对象调用这个方法时,将调用子类中的定义方法,这相当于把父类中定义的那个完全相同的方法给覆盖了,这也是面向对象编程的多态性的一种表现。是一种动态绑定的多态机制,即在父类和子类中同名元素(如成员函数)有不同的实现代码,执行的是哪个代码是根据运行时实际情况而定的。

需要注意的是,子类覆盖父类的方法时,只能比父类抛出更少的异常,或者是抛出父类抛出的异常的子异常,因为子类可以解决父类的一些问题,不能比父类有更多的问题。子类方法的访问权限只能比父类的更大,不能更小。如果父类的方法是private类型,那么,子类则不存在覆盖的限制,相当于子类中增加了一个全新的方法。

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!

新视点数码百科版权所有,广州云媒派信息技术有限公司 版权所有 粤ICP备2021127029号