重载

Admin in 百科 2024-04-15 17:46:00

重载Top
  重载:在一个类定义中,可以编写几个同名的方法,但是只要它们的签名参数列表不同,Java就会将它们看做唯一的方法。
  简单的说:一个类中的方法与另一个方法同名,但是参数表不同,这种方法称之为重载方法。
  重载是不是多态?
  re:
  重载还是一种是多态吧,有四种形式的多态
  1.虚函数多态
  2模板多态
  3重载
  4转换
  所谓的动态和静态区分是另一种基于绑定时间的多态分类,严格来说,重载是编译时多态,即静态多态,根据不同类型函数编译时会产生不同的名字如int_foo和char_foo等等,以此来区别调用。故重载仍符合多态定义——通过单一标识支持不同特定行为的能力,只是重载属于静态多态,而不是通过继承和虚函数实现的动态多态。
  另一中说法:
  重载(overload)和多态无关,真正和多态相关的是覆盖(override)。
  当派生类重新定义了基类的虚拟方法后,基类根据赋给它的不同的派生类引用,动态地调用属于派生类的对应方法,这样的方法调用在编译期间是无法确定的。因此,这样的方法地址是在运行期绑定的(动态邦定)。
  结论就是:
  重载只是一种语言特性,与多态无关,与面向对象也无关。

免责声明:本站文字信息和图片素材来源于互联网,仅用于学习参考,如内容侵权与违规,请联系我们进行删除,我们将在三个工作日内处理。联系邮箱:chuangshanghai#qq.com(把#换成@)

-- End --