首页 > 代码库 > 函数重载

函数重载

一、函数重载的条件:(满足其一即可)

  1)参数个数不同

  2)参数类型不同

  3)参数类型的顺序不同

  示例:

    

 1 /*函数重载条件*/ 2                 public class FunctionDemo8 3                 { 4                     public static void main(String[] args) 5                     { 6                         System.out.println(add(3.5, 6)); 7                          8                     } 9                     10                         public static int add(int a, int b)11                         {12                             return a+b;13                         }14                         15                         public static double add(double a, double b)16                         {17                             return a+b;18                         }19                         public static double add(double a, int b)20                         {21                             return a+b;22                         }23                         public static double add(int a, double b)24                         {25                             return a+b;26                         }27                         28                         public static int add(int a, int b, int c)29                         {30                             return a+b+c;31                         }32                 }

 

二、原因:

  1)调用函数实际是根据对应的函数名称去找到对应的函数入口地址,以此来进行调用

  2)而不同的函数名称对应着不同的函数入口地址

  3)函数名称的命名:

      在C语言中:函数名称实质就是当前显示的函数名
    eg:

     int
func(int a, char b, double c); 的实际函数名称为:  func
   

  

    在java语言中:函数名称实质为:函数名_参数类型名    eg:    int func(int a, char b, double c); 的实际名称为:func_int_char_double

   由此,我们也知道了C语言不能有函数重载,而java语言有函数重载的原因。

    

    

函数重载