函数重载

✍ dations ◷ 2025-11-30 15:59:53 #多态,计算机编程

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

相关

  • 三键三键(英语:Triple bond),是有机化学中原子与原子之间被3对价电子连结的共价键的称号。在有机化学中,所有的炔烃化合物都具有三键,同时,也有许多其他例子
  • 璧是中国古代用于祭祀的玉质环状物,凡半径是空半径的三倍的环状玉器称为璧。《尔雅》云:“肉倍好谓之璧,好倍肉谓之瑗,肉好若一谓之环。”,所谓肉是指边,好是指孔。实际上这一比例
  • 书吏书吏又称作抄写员、文士,是古代一种专门为人纪录事情或抄写文本的职业。书吏的工作内容主要是抄写书籍,其内容可能是宗教文本、虚构故事、学术文本或教诲文学。有时候书吏还必
  • 最高元首宪法 - 法律 - 国家元首 - 政府首脑 -马来西亚最高元首(马来语:Yang di-Pertuan Agong Malaysia;英语:Supreme Head of Malaysia)是马来西亚的选举君主立宪制国家元首、马来西
  • 玛丽·居礼玛丽亚·斯克沃多夫斯卡-居里(波兰语:Maria Skłodowska-Curie,1867年11月7日-1934年7月4日),通常称为玛丽·居里(法语:Marie Curie)或居里夫人(Madame Curie),波兰裔法国籍物理学家、化
  • 坡头区坡头区是中国广东省湛江市下辖的一个市辖区。坡头区人民政府驻南调街道,面积424平方千米,人口39.38万。 基本概况 编辑坡头是湛江市辖区,位于广东省西南部,雷州半岛东北部,湛江
  • VGVG是一种“V系列”的神经毒剂,其化学性质类似于VX。1950年代中期,帝国化学工业将这种物质(用作杀虫剂)命名为Amiton。而Tetram是该物质的俄文译名。甲二氯胂(MD) · 乙二氯胂(ED)
  • 吉姆·柏瑞哲詹姆斯·“吉姆”·柏瑞哲(英语:James "Jim" Bridger,1804年-1881年7月17日),活跃于1820年代至1840年代的美国西部拓荒时期探险家、陆军向导、侦查员。吉姆·柏瑞哲具有异乎寻常的
  • 阿马尔·阿卜杜勒-哈米德阿马尔·阿卜杜勒-哈米德(阿拉伯语:عمار عبد الحميد‎,1966年5月30日-)是叙利亚人权活动家、持不同政见者和基金会创始人。1966年,阿卜杜拉哈米德出生在叙利亚大马士
  • 诺尔·克拉克诺尔·安东尼·克拉克(Noel Anthony Clarke,1975年12月6日-)是一位英国英格兰伦敦演员、导演、编剧。1975年,克拉克出生于英国英格兰伦敦,克拉克先是在北伦敦大学学习媒体,之后到伦