函数重载

✍ dations ◷ 2025-12-03 22:08:38 #多态,计算机编程

函数重载(英语: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关键字显式引入基类型的成员函数名。

相关

  • 病原体病原体(希腊语:πάθος pathos “痛苦”、“热情” 与 -γενής -genēs “生产者”),在生物学中,从最古老和最广泛的意义上说,就是任何可以产生疾病的事物。病原体也可以称
  • 甘氨酸甘氨酸(英语:Glycine,简写为Gly或G),即胺基乙酸,是20个蛋白氨基酸中分子量最小的一个。它是白色或浅黄色晶体,易溶于水,有甜味。甘氨酸的侧键是一个氢原子。甘氨酸的α碳连接两个氢
  • 大清会典《大清会典》,简称《清会典》,是中国清朝中央政府官修、钦定的会典。大清会典详细的编纂了清朝中央政府的编制、职权、官员品级、统属关系以及各项办事制度,也是当时处理公务的
  • span style=color: white;EUL-NGL/span欧洲联合左翼/北欧绿色左翼(英语:European United Left/Nordic Green Left,缩写为GUE/NGL)是欧洲议会内的一个左翼党团,成立于1995年1月6日,由欧洲联合左翼联盟党团和“北欧绿色左
  • 特殊地位集体特殊地位集体(法语:collectivité à statut particulier)是法国的一种领土集体。根据《法兰西第五共和国宪法》第72条规定,特殊地位集体不属于市镇、省和大区,亦非第73条规定的
  • 马尔讷拉科凯特1法国统计部门在计算土地面积时,不计算面积大于1平方公里的湖泊、池塘、冰川和河口。马尔讷拉科凯特(法语:Marnes-la-Coquette)是法国法兰西岛大区上塞纳省的一个市镇,属于布洛涅
  • 硬颚鼻音硬颚鼻音(palatal nasal)是辅音的一种,在国际音标中以⟨ɲ⟩表示,在X-SAMPA中以⟨J⟩表示。吴语苏州话的声母gn就是此音。粤语钦廉方言相对广州话来说,部分“j”被“ɲ”替代,如“
  • 约翰·普罗富莫约翰·邓尼斯·普罗富莫,CBE(John Dennis Profumo,1915年1月30日-2006年3月9日),别名为杰克·普罗富莫,是英国政治家,也是1963年普罗富莫事件的中心人物,该事件对当时麦美伦的保守党
  • 弗吉尼亚·约翰逊弗吉尼亚·埃谢尔曼·约翰逊 (英语:Virginia Eshelman Johnson,1925年2月11日-2013年7月24日), 生于美国密苏里州春田市,性学家与心理学家,与威廉·马斯特斯(William Howell Masters)
  • 内布拉斯加州州旗内布拉斯加州州旗以蓝色为底,中央为内布拉斯加州州徽,这个设计自1925年起为州政府采用,但直到1963年才正式明定为州旗。内布拉斯加州是全美国最晚正式明定州旗的几个州之一。在