函数重载

✍ dations ◷ 2025-12-01 06:18:08 #多态,计算机编程

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

相关

  • 语言类型学语言类型学(linguistic typology),语言学的分支学科,研究不同语言的特征并通过这些特征而对其进行分类。其理念是相信只有经过跨语言的比较研究才能了解人类语言的本质,并不相信
  • 闰周历闰周历是一种每年的星期数都是整数,每年开始的工作日也是同一天的日历系统。多数的闰周历都是对民用历提出改革,以实现万年历。然而,像ISO周日历,只是方便使用于特定的目的。上
  • 钱崇澍钱崇澍(1883年11月11日-1965年12月28日),号雨农,浙江省海宁县人,植物学家,与胡先骕等同为中国近代植物学的主要奠基人。曾任中国科学院植物研究所所长、中国科学院学部委员(院士)、全
  • 糸鱼川市糸鱼川市(日语:糸魚川市/いといがわし Itoigawa shi */?)为位于新潟县最西端,面向日本海的城市。是世界上知名的玉产地。市区面积746.24平方公里,总人口43,724人。市制施行于195
  • 朝鲜肃宗朝鲜肃宗(朝鲜语:조선 숙종/朝鮮 肅宗 ;1661年-1721年),名李焞(朝鲜语:이순/李焞 ),幼名龙祥,字明普,是朝鲜王朝的第19代君主,1674年至1720年在位。显宗二年八月十五日,王妃金氏在庆德宫会
  • 曼纽尔·加米欧曼纽尔·加米欧(Manuel Gamio,1883年-1960年),墨西哥人类学家,考古学家,社会学家。拉丁美洲文学界土著主义(Indianismo)运动的领导者之一。他曾在美国师从于美国人类学家法兰兹·鲍亚
  • 2006年世界房车锦标赛土耳其站2006年世界房车锦标赛土耳其站是2006年度世界房车锦标赛的第八站赛事,正式比赛在2006年9月24日于土耳其伊斯坦布尔公园赛道上举行。这是第二次在土耳其举行赛事。第一回合由
  • 内藤多仲内藤多仲(日语平假名:ないとう たちゅう,1886年6月12日-1970年8月25日)是一位日本建筑师、工程师和教授。出身于山梨县南阿尔卑斯市。他被称为“塔博士”、“耐震构造之父”,并建
  • 古正晴古正晴(Ku Cheng-chin,1996年7月25日-)为台湾台球运动员,毕业于正修科技大学,曾获得2017年夏季世界大学生运动会台球比赛女子9号球单打金牌。家中开设台球馆,因此从小由曾为举重选
  • 大江广元大江广元(おおえのひろもと,1148年-1225年7月16日)是镰仓幕府时代的人。历任源赖朝、北条义时、北条泰时、北条经时等幕府将军。子:大江时广、大江季光。大江广元是源赖朝非常忠