版权声明:本文为博主原创文章,未经博主允许不得转载。
1、概念
函数重载:所谓的函数重载就是指同一个函数名可以对应着多个函数的实现,这些个同名函数对应着可以实现功能类似的函数体,为了区别这些同名函数,则这些函数的形式参数(指参数的个数、类型或者顺序)必须不同,也就是说同一个运算符完成不同的功能;
重载函数通常用来处理功能类似而处理的数据类型不同的函数。
2、c++语言实现函数重载:
下面是一个简单的加法运算的重载函数的实现:#include
int add(int ,int);
double add(double,double);
void main(){
cout<
cout<
}
int add(int x,int y){
return x + y;
}
double add(double a,double b){
return a + b;
}
3、Java语言实现函数重载:
3.1、Java实现函数重载,请注意以下几个问题:
在调用重载函数时,首先查询类型匹配的数据,如果数据不匹配,则查询类型大于传入类型的数据而且是最接近的,示例如下:package com.learn.java;
public class MyOverride {
void f(char c){
System.out.println("Char " + c);
}
/*void f(int m){
System.out.println("Int " + m);
}*/
void f(long l){
System.out.println("Long " + l);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
int t = 65;
MyOverride over = new MyOverride();
over.f(t);
}
}
输出: long 65;
3.2、在类型不匹配的情况,可以进行强制转换package com.learn.java;
public class MyOverride {
void f(char c){
System.out.println("Char " + c);
}
/*void f(int m){
System.out.println("Int " + m);
}*/
void f(long l){
System.out.println("Long " + l);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
int t = 65;
MyOverride over = new MyOverride();
over.f((char)t);
}
}
输出:Char A。
那么,在下一篇问章中,如何利用JavaScript语言实现函数重载,将是我们的学习重点。