首先,要认识一个新东西,就需要去了解为啥要去使用它?
一、为什么要有方法?
首先,当我们需要去对一段代码进行复用,并且复用的频率很高的时候,这个时候,就可以将这段代码块包装成一个方法,这样当再次使用的时候就可以直接通过方法来调用。
简单举个例子,就像我们平时打篮球时,最初的时候,大家都不知道规则,每个地方都有自己规则,这样就导致每到一个新的地方的时候,就需要去进行学习那个方法,太麻烦了,那我们就制定一个大家都遵守的方案,这样就可以更方便的打球。
代码举例:
当我们需要分别计算1到100,1到200的时候,当不使用方法时是这样的:
public static void main(String[] args) {
int num=0;
for (int i = 1; i <=100; i++) {
num+=i;
}
System.out.println(num); //5050
int num2=0;
for (int i = 1; i <= 200; i++) {
num2+=i;
}
System.out.println(num2); //20100
}
而,当我们使用方法的时候,是这样的:
public class demo1 {
public static void main(String[] args) {
sum(100); //5050
sum(200); //20100
}
public static void sum(int num){
int n=0;
for (int i = 1; i <=num; i++) {
n+=i;
}
System.out.println(n);
}
}
这个时候,当还需要对其他的数进行求和运算的时候,就可以直接调用方法。大大节省了时间,同时,在main方法里也更加的简洁明了。
二、Java方法
Java方法(Method)是将具有独立功能的代码块组织成为一个整体,使其成为具有特殊功能的代码集,实现代码复用
Java的方法包含在类或者对象里。在程序中被创建,而在需要的时候进行调用。方法必须先定义再使用,不然会报错。
方法设计的原则:
设计方法的时候,一个箩卜一个坑,尽量做到一个方法实现一个小功能就好。专业可以保证方法的原子性,便于后期的修改和拓展。
方法的定义:
方法创建的过程就叫做方法的定义。
格式:
public static void 方法名(参数/无参数){
方法体
}
方法的调用:
手动的在其他方法中进行调用。
方法的种类:
a、无参数无返回值的方法:
形式如:
public static void 方法名(){
方法体
}
举例说明:
public class testMethod {
public static void main(String[] args) {
getLove();
}
public static void getLove(){
for (int i = 1; i <=3 ; i++) {
System.out.println("我爱中国!");
}
}
}
b、无参数,有返回值的方法:
形式如:
public static 数据类型 方法名(){
return 变量名;
}
其中,注意,返回值中变量名的数据类型和方法定义中的数据类型需要一致。
举例说明:
public class demo1 {
public static void main(String[] args) {
int n=sum();
System.out.println(n);
}
public static int sum(){
return 5201314;
}
}
c、有参数,没有返回值的方法:
形式如:
public static void 方法名(数据类型 变量名){
方法体;
}
具体举例:
public class demo6 {
public static void main(String[] args) {
/*
输入两个正整数m和n,求其最大公约数和最小公倍数
*/
getMax_Min(12,18);
}
public static void getMax_Min(int m,int n){
//最小公倍数
for (int i = 1; i <= m*n; i++) {
if (i%m==0 && i%n==0){
System.out.println("最小公倍数是:"+i);
break;
}
}
//最大公约数
/*int num=0;
for (int i = 1; i <= (m>n?m:n) ; i++) {
if (m % i == 0 && n % i == 0) {
num = i;
}
}
System.out.println("最大公约数为:"+num);*/
}
}
d、有参数,有返回值的方法:
形式如:
public static 数据类型 方法名(数据类型 变量名){
return 变量名;
}
代码举例:
public class demo2 {
public static void main(String[] args) {
int n=getNum(1,2);
System.out.println(n);//3
}
public static int getNum(int a,int b){
return a+b;
}
}
三、方法的重载
方法重载(method overloading)是指在同一个类中,可以定义多个方法名相同但参数列表不同的。通过方法重载,可以根据不同的参数类型和个数来调用不同的方法。
在Java中,方法重载的条件如下:
- 方法名相同。
- 参数列表不同,包括参数类型不同、参数个数不同或者参数顺序不同。
- 方法的返回类型可以相同也可以不同。
代码进行举例:
public class demo4 {
public static void main(String[] args) {
String s=getCar("1");
System.out.println(s); //这是一辆校车
String str=getCar("1",1);
System.out.println(str); //这是飞机不是车哦!
}
public static String getCar(String s){
return "这是一辆校车";
}
public static String getCar(String s,int a){
return "这是飞机不是车哦!";
}
}
重载可以使功能更加的完善。当需要对功能进行补充的时候,重载是一个很好的解决办法,既不影响原子性,同时也让代码更加的易于查错。
本次对于Java的方法就到这里了,欢迎大家留言评论区,共勉!!!