函数重载

✍ dations ◷ 2025-12-01 12:40:17 #多态,计算机编程

函数重载(英语:function overloading),是Ada、C++、C#、D和Java等编程语言中具有的一项特性,这项特性允许创建数项名称相同但输入输出类型或个数不同的子程序,它可以简单地称为一个单独功能可以执行多项任务的能力。

Java支持函数重载。当多个同名函数的形式参数的数据类型不同或数量不同时,就构成了函数的重载。

 1 public class Test{ 2     public void A(){                //这是一个无形式参数名称为A的函数。 3          4     } 5     public void A(int a){           //这个函数有一个数据类型为int的函数,函数数目不同,故构成重载。 6          7     } 8     public void A(String a){        //这个函数数据类型为String,形式参数的数据类型不同,故构成重载。 9         10     }11     public void A(int a,int b){     //这个函数有两个形式参数,故构成重载。12         13     }14     public int A(int a,String b){    //这个函数的第二个形式参数的数据类型与上一个函数的数据类型不同,故构成重载。15         /*16         重载的函数的返回值可以不同,但是如果两个或多个函数只有返回值不同,不足以构成重载。17         */18     }19 }

构造器重载

Java

Java中的构造器可以重载,重载方式与普通函数的重载方法一样,唯一不同的就是返回值不可以更改。

对于名字屏蔽(英语:name masking),C++规定不存在跨作用域(scope)的名字重载。即内层作用域的函数名字将屏蔽掉外层作用域的同名函数名字。

C++子类型的成员函数名将屏蔽其基类型的同名成员函数名,即被继承类与派生类的同名成员函数名不构成函数名重载。除非在子类型中用using关键字显式引入基类型的成员函数名。

相关

  • 胍基乙酸胍基乙酸 (英语:Glycocyamine)是一种甘氨酸的代谢中间产物,其氨基被胍基取代。胍基乙酸是肌酸生物合成的直接前体(如下图)。 但这一反应会造成高半胱氨酸水平的升高,导致一些心血
  • 坡地蠕动蠕动(地貌学),即为斜坡上的松散堆积物或表面岩层在自身重力作用下,顺坡向下发生长期缓慢的移动现象。坡地蠕动主要出现在15°-35°的坡地上,坡度较大的坡地,难以保存黏土和水分,而<1
  • 士兵士兵或兵,在其最一般的意义上说,是自愿或义务兵役制根据招募到的人以保卫国家的主权,接受培训和装备,以保卫国家和它的利益。作为这些武装部队的一员,他成为军队中的有组织的军人
  • 2013年欧洲冠军联赛决赛阿尔扬·罗本 (拜仁慕尼黑)曼努埃尔·诺伊尔 (拜仁慕尼黑)2013年欧洲冠军联赛决赛也可称为第 58 届欧洲冠军联赛决赛,会在2013年5月25日在英国的温布利球场举行。赛事由多特蒙
  • 安那罕天使球场安那罕天使球场(Angel Stadium of Anaheim),一般称为天使球场,曾经先后使用过包括安那罕球场(Anaheim Stadium)以及安那罕艾迪生国际球场(Edison International Field of Anaheim)等
  • 机枪机枪或称机关枪、机关铳(Machine gun),指全自动,可快速连续发射的枪械,可能是固定式的,也可能是活动式的,其子弹会由弹链或是弹匣连续填充,并且发射,每分钟约有300至1800发子弹。机枪
  • 圣巴泰勒米政府主席圣巴泰勒米行政长官列表(Liste des gouverneurs et maires de Saint-Barthélemy),是法国海外行政区域的圣巴泰勒米的行政长官。阿根廷总统 · 安提瓜和巴布达总理 · 巴巴多斯
  • 氦三聚体氦三聚体是一个由三个氦原子组成,靠范德华力键合的化合物。它比氦二聚体更稳定。氦-4原子的三聚体处于埃菲莫夫态。 氦-3推测可以三聚,尽管含有氦-3的氦二聚体在基态完全不稳
  • 孙犁孙犁(1913年5月11日-2002年7月11日),原名孙树勋,男,河北安平人,中国现当代小说家、散文家。孙犁是河北省安平县孙辽城村人。早年曾当过机关职员、小学教员。抗日战争时期在中国共产
  • 台湾马醉木台湾马醉木(学名:)为杜鹃花科马醉木属下的一个种。别名为台湾梫木、台湾桂木。是常绿性的矮灌木,主要生长环境为向阳坡面。全世界马醉木属的植物有十种,台湾只有一种,即为台湾马醉