MethodDemo
class MethodDemo
{
public static void main(String[] args)
{ //调用自定义的方法。
draw(4,5); draw(8,9); } /*
问题:要画矩形,需要不断使用该for嵌套代码。造成代码复用性很差。
解决:定义一个功能用于画矩形,每次只要使用该功能即可。这样提高复用性。 如何定义一个功能呢?
1,它应该是一个封闭的区间。就是大括号。
2,它需要有名称。
3,需要有参与运算的数据。
4,需要定义该功能的结果类型。
*/ public static void draw(int row,int col)
{
for(int x=0; x<row; x++)
{
for(int y=0; y<col; y++)
{
System.out.print("*");
}
System.out.println();
} //return;
} }
MethodDemo2
class MethodDemo2
{
public static void main(String[] args)
{
//int sum = add(2,5);
//System.out.println(sum);
add(2,5); } /*
修饰符 返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数2,...)
{
执行语句;
return 返回值;//return关键字是用于结束该功能。并将后面的具体结构返回给调用者。
//必须有return语句。
} 注意:函数的返回值类型如果是void。时,return语句可以省略不写。return;
void表示的是没有返回值的情况。
*/ /*
如何定义一个函数呢?
函数就是一个功能。
功能就需要两部分:
1,结果,2,未知内容。
明确1:这个功能的结果是什么?
其实就是明确返回值类型。
明确2:这个功能需要未知内容是什么?
其实就是明确参数列表。
*/ //需求:需要一个方法,进行加法运算,获取两个整数的和。
/*
明确1:功能的结果是什么呢?是一个和。和是整数。返回值的类型是 int.
明确2:功能的未知内容有吗?有,加数和被加数。都是int类型,这就是参数列表。 */
/**/
public static int add(int a,int b)
{
return a+b;
} /*
//不要把功能定义成这样,因为,功能内只定义所需的内容。不需要的不定义。
public static void add(int a,int b)
{ return ;
}
*/
}
MethodDemo3
class MethodDemo3
{
public static void main(String[] args)
{ //printCFB(9);
int sum = add(3,4); System.out.println(sum);
} /*
函数名定义就是为了描述该功能。 一个类中出现同名的函数,只要他们的参数个数或者参数类型不同,就称之为函数的重载。overload。
和返回值类型无关。
*/
//两个整数求和的功能。
public static int add(int a,int b)
{
return a+b;
}
//三个整数求和。
public static int add(int a,int b,int c)
{
return a+b+c;
} //两个小数的和。
public static double add(double a,double b)
{
return a+b;
} //九九乘法表。
public static void printCFB()
{
printCFB(9);
} public static void printCFB(int num)
{
for(int x=1; x<=num; x++)
{
for(int y=1; y<=x; y++)
{
System.out.print(y+"*"+x+"="+y*x+"\t");
}
System.out.println();
}
}
} /* void show(int a,float b,char c){} 下列哪些函数和给定函数重载了。 a.
int show(int x,float y,char z)//没有重载,这个函数不允许和给定函数存在于同一个类中。因为会产生调用的不确定性。 b.
void show(float b,int a,char c)//重载了,参数类型不同。 c.
void show(int c,float a,char b)//没有重载,和给定函数一样。不允许存在。 d.
void show(int a,int b,int c)//重载了,因为类型不同。 e.
double show()//重载了,因为个数不同。
*/
MethoTest
class MethodTest
{
public static void main(String[] args)
{
sop("hello world"); //System.out.println("Hello World!");
}
public static void sop(String str)
{
System.out.println(str);
} /*
需求1:定义方法,比较两个数谁大?
明确1:结果?int
明确2:参数?int int
public static int max(int a,int b)
{ //if(a>b)
//return a;
//else
//return b; return a>b?a:b;
} 需求2:判断两个数是否相同。
结果?boolean。
参数?int int
public static boolean isEquals(int a,int b)
{
//return a==b?true:false; return a==b;
} 需求3,定义方法,完成99乘法表的显示。 需求4,定义方法,获取任意整数的十六进制表现形式,升级为数组版。 需求5,定义方法,用于打印给定的字符串信息。String str = "abc";
public static void sop(String str)
{
System.out.println(str);
} */
}