/*
目的:练习使用函数的重载,熟练掌握函数的重载过程,使用重载来调用函数;
需求:使用重载函数来产生不同的花型图形,给定一个15阶的菱形;分别产生¥ % &
思路:通过for循环来产生一个菱形,图形,通过,函数重载打印出不同花型的菱形;
步骤:1,通过for循环来产生15阶菱形;
2,通过函数调用打印出一个菱形;
3,通过重载分别产生不同的花型菱形;
*/
/*
重载overload
概念:在同一个类中,允许存在一个以上的同名函数,只要他们的参数或者参数类型不同即可(也即参数列表不同即可)
重载的特点:与返回值的类型无关,只看参数列表;
重载的好处:方便于阅读,优化程序设计;
为什么需要重载?
在对函数进行命名时,函数名用于体现函数的功能,如果功能一致,为了减少代码重复,或者便于阅读,可以使用函数重载;
参与运算的未知内容不同,可只定义一个函数名称,以表示其功能,方便阅读,通过参数列表的不同来区分不同的函数!
注意,不用返回值类型的同名函数不同存在于同一个类中个eg:void show() 与 double show()不能同时存在于同一个类中!
*/
class Overload
{
public static void main(String[] args)
{
show(); //无参类型
show('@'); //有参类型
}
public static void show(char ch) //定义一个有参的函数
{
int x,y;
for (x = 1;x<=15 ;x++ ) //第一层控制行数
{
for (y = 1;y<=15 ;y++ )//第二层控制列数
{
if((x+y>8) && (x+y<24) && (x-y<= 7) && (y-x<=7) )
//满足条件则产生图形;
System.out.print(ch+" ");
else
System.out.print(" "); // 不满足条件则产生空格
}
System.out.println(); //每一行结束后换行
}
}
public static void show() //函数重载过程,使用无参重载,内部调用有参函数;
{
show('#'); //调用有参函数;
}
}
/*
运行结果:
运行show();函数默认调用无参类型
#
# # #
# # # # #
# # # # # # #
# # # # # # # # #
# # # # # # # # # # #
# # # # # # # # # # # # #
# # # # # # # # # # # # # # #
# # # # # # # # # # # # #
# # # # # # # # # # #
# # # # # # # # #
# # # # # # #
# # # # #
# # #
#
运行show('@');函数默认调用无参类型
@
@ @ @
@ @ @ @ @
@ @ @ @ @ @ @
@ @ @ @ @ @ @ @ @
@ @ @ @ @ @ @ @ @ @ @
@ @ @ @ @ @ @ @ @ @ @ @ @
@ @ @ @ @ @ @ @ @ @ @ @ @ @ @
@ @ @ @ @ @ @ @ @ @ @ @ @
@ @ @ @ @ @ @ @ @ @ @
@ @ @ @ @ @ @ @ @
@ @ @ @ @ @ @
@ @ @ @ @
@ @ @
@
*/