方法,方法的注意事项

1.方法的优势:实现代码复用,减少了代码重复。方便后期的维护。

2.方法:具备特定功能的一段独立的代码段。一个方法对应一个功能。

方法声明的语法:

访问修饰符 [static/final/abstract]  返回值类型 方法名(参数类型 参数名1,参数类型 参数名2……){

方法体

return 返回值;//作用返回方法执行后的结果,结束方法

  }

方法调用的语法:方法名(参数名1,参数名2……);

访问修饰符:public,private,(default),protected.

返回值类型: void+java支持的数据类型

方法名:骆驼式命名法

方法声明时的参数(可以是0个到多个):在方法声明时,这个地方的参数叫形参。形参的参数名前一定写数据类型。

方法调用时的参数:叫实参。实参不需要写数据,只需要传值。实参传递的参数实际上是传给形参。

return 返回值:方法的返回值类型是什么,咱们返回值就只能是这种类型。如果方法返回值类型为void时,就无须用return 返回值。

注:(1)方法不调用不执行,调用才执行。

(2)形参与实参的参数个数相同,形参与实参的参数对应类型要相同,参数的位置也要匹配。

(3)如果方法有返回值,谁调用这个方法,返回值就返回给谁;

有返回值的方法在调用时,如果要用到返回值就要定一个变量接收方法的返回结果;

如果不用返回结果,在方法调用时就不需要接收返回结果。

(4)如果一个方法执行时,需要调用才提供数据才能完成功能,就可以用有参方法;

如果一个方法执行完,需要方法返回结果,就定成有返回值 。

(5)方法与方法是平级关系,不能嵌套定义。

  (6)方法间可以相互调用。

eg:

/**

*  声明一个无参无返回值的方法

*/

public static void shuaPin(){

System.out.println("刷屏");

}

/**

*  声明一个有参无返回值的方法

*/

public static void add(int a,int b){

int result=a+b;

System.out.println(result);

}

/**

* 声明一个有参方法,有返回值

*/

public static int chen(int num1,int num2){

int result=num1*num2;

return result;

}

3.方法重载:(1)在同一个类 (2)方法名相同 (3)参数列表不同(参数的个数不同和类型不同)

使用场景:在同一个类,如果执行相同的功能,只是参数不一样,可以用方法重载。

方法重载与方法的访问修饰符和返回值类型无关。

在调用时,虚拟机通过参数列表的不同来区分同名方法。

eg:public static int add(int num1,int num2){

System.out.println("两个数的和");

int result=num1+num2;

return result;

}

public static int add(int num1,int num2,int num3){

System.out.println("三个数的和");

int result=num1+num2+num3;

return result;

}

4.递归:方法自身调用自身。

适用场景:(1)把一个问题拆分成多个子问题。

  (2)子问题的解决方式与问题本身的解决方式一样

  (3)最终问题的解决依赖每个子问题的解决

  (4)最终问题一定要有出口。

eg:计算一个正整数num的阶乘

public static long diGui(int num){//5

if(num==1){

return 1;

}else{

return num*diGui(num-1);//5*diGui(4)->5*4*diGui(3)->5*4*3*diGui(2)->5*4*3*2*1

}

}

你可能感兴趣的:(方法,方法的注意事项)