函数重载

✍ dations ◷ 2025-12-09 11:38:43 #多态,计算机编程

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

相关

  • BeS硫化铍是一种离子化合物,化学式为BeS。硫化铍可以通过铍和硫的混合物在氢气环境下于1000~1300℃加热10~20分钟得到。另一种方法是通过硫化氢和氯化铍在1150℃的反应,这种方法
  • .eu.eu为欧洲联盟国家及地区顶级域(ccTLD)的域名。于2005年12月7日启用,实际可以用于任何在欧洲经济区居住的个人,或坐落在此的公司或组织,意味着不属于欧盟成员国的冰岛、列支敦士
  • BlikiWiki引擎,或称为Wiki软件,是指用来架设Wiki的软件。广义来说,即是一种软件能作为网络共笔,供网民自行编辑,并最终集合成完整的数据库。狭义来说,即是能达成维基百科样式的软件。由
  • 美国精神病学协会1000 Wilson Boulevard, Suite 1825 美国美国精神医学学会(American Psychiatric Association)是美国精神科医生的专业组织,在行内具有全球性的影响力。现有约38000名会员,大部
  • 亚欧大陆欧亚大陆或亚欧大陆是亚细亚洲大陆和欧罗巴洲大陆的合称。面积5473.8万平方公里。亚、欧二大陆单从地理学方面来归类应属同一个、地球表面面积最大的洲。亚洲与欧洲的分别主
  • 联合国禁止酷刑公约《联合国禁止酷刑公约》其全名为《禁止酷刑和其他残忍、不人道或有辱人格的待遇或处罚公约》(The United Nations Convention against Torture and Other Cruel, Inhuman or
  • 盟军由巴黎到莱茵的推进美国: 240,082人伤亡 盟军由巴黎到莱茵的推进是于第二次世界大战的西欧法德疆界附近发生的战事,维持了约半年,其结果是盟军占领法国、比利时、卢森堡的大部分领土、荷兰的南部
  • 斯蒂文·霍尔斯蒂文·霍尔(英语:Steven Holl,1947年12月9日-)是生活在纽约的建筑师。他最具代表性的作品包括:1998年建成的基亚斯玛当代艺术博物馆、2003年建成的麻省理工学院学生宿舍西蒙斯楼
  • 魁拔《魁拔》是中国大陆一部玄幻动画系列剧,由青青树动漫制作。系列立项初期名为《灵山王》。原计划制作520集电视动画(52集×10年)和5部电影动画,后电视动画的制作计划被削减至156
  • 林郁方林郁方(1951年3月15日-),台湾泛蓝政治人物,高雄杉林客家人,美国维吉尼亚大学国际政治学博士,曾代表新党、亲民党及中国国民党担任五届立法委员,任内多关注国防事务,亦多次被评为优秀