我们之前说过了函数的定义以及应用,今天我们来说说函数的重砸。
重载是在同一个类中,允许存在一个以上的同名函数,只要他们的参数个数或者参数类型不同即可。
重载的特点是与返回型无关,只看参数列表。
重载的好处是方便与阅读,优化了程序运行。
举个例子我下面写的这个代码。
class Demo
{
public static void main(String[ ] args)
{
int q=add(4,5);
System.out.println("add="+q);
int w=add1(4,5,6);
System.out.println("add1="+w);
}
public static int add(int x,int y)
{
return x+y;
}
public static int add1(int x,int y,int z)
{
return x+y+z;
}
}
我们可以看出来主函数调用了下面我定义的这两个函数。然后都是进行了相同的加法运算。他们功能一致,所以用的功能名称也一致都是add。这样能用是能用的。但是它在这个类里面就是出现了重载。
那么我们什么时候用重载呢?
当我们定义的功能相同时,但是参与运算的未知内容不同时,就定义一个函数名称以表示它的功能,方便阅读,向通过参数列表的不同来区分不同名函数。
就比如我们现在要用99乘法表,我们就拿来代码来用。
class Demo
{
public static void main(String[ ] args)
{
print99();
}
public static void print99()
{
for(int x=1;x<=9;x++)
{
for(int y=9;y >=x;y--)
{
System.out.print(y+"*"+x+"="+y*x+"\t");
}
System.out.println();//只有一个功能就是换行。
}
}
}
但是如果有的人只想打印到33乘法表怎么办,所以我们这时候就要重新写个代码,让他们重载。
class Demo
{
public static void main(String[ ] args)
{
print99(3);
}
public static void print99()
{
print99(9);
}
public static void print99(int num)
{
for(int x=1;x<=num;x++)
{
for(int y=9;y >=x;y--)
{
System.out.print(y+"*"+x+"="+y*x+"\t");
}
System.out.println();//只有一个功能就是换行。
}
}
}
这样就把我们的代码简化了一下,这样就增加了代码的阅读性,我们在日常使用中这种方法的使用可以让我们更好的进行阅读,所以我们应使用起来。
希望对大家有所帮助。