• Java编程基础-方法


    1、方法(函数)概要

    (1)、含义:方法(函数)就是定义在类中的具有特定功能的一段独立小程序。

    (2)、方法定义的语法格式:

           修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2,..){

                  执行语句

                  ……

                  return 返回值;

           }

    格式说明:

    修饰符:方法的修饰符比较多,有对访问权限进行限定的,有静态修饰符static,还有最终修饰符final等。

    返回值类型:用于限定方法返回值的数据类型。

    参数类型:用于限定调用方法时传入参数的数据类型。

    参数名:是一个变量,用于接收调用方法时传入的数据。

    return关键字:用于结束方法以及返回方法指定类型的值。

    返回值:被return语句返回的值,该值会返回方法指定类型的值。

    (3)、特别注意:

    a)方法中的“参数类型 参数名1,参数类型 参数名2”被称作参数列表,它用于描述方法在被调用时需要接受的参数,如果方法不需要接收任何参数,则参数列表为空,即()内不写任何内容。

    b)方法的返回值必须为方法声明的返回值类型,如果方法中没有返回值,返回值类型要声明为void,此时,方法中return语句可以省略。

    c)方法只有被调用时才会执行。函数只能调用函数,不能在函数中定义函数。java最小功能单元就是函数。

    (4)、定义方法的两个明确:

    第一,  明确定义的功能最后的结果是什么?明确返回值类型。

    第二,  明确在定义该功能过程中,是否有未知内容参与运算?明确参数列表。

    简单代码示例演示:

     

    1. public class Demo {  
    2.   
    3.     public static void main(String[] args) {  
    4.         int add = add(5, 12);// 调用add()方法,用一个int类型的变量add接收结果  
    5.         System.out.println(add);// 打印结果  
    6.         printInfo();// 调用printInfo()方法  
    7.     }  
    8.   
    9.     public static int add(int i, int j) {// 带两个int类型参数,返回值为int的求两个整数的和的方法  
    10.         int sum = i + j;  
    11.         return sum;  
    12.     }  
    13.   
    14.     public static void printInfo() {// 无返回值类型的方法  
    15.         System.out.println("Hello World!");  
    16.         // return;可以省略  
    17.     }  
    18. }  

    2、方法重载

    (1)、含义:Java允许在一个程序中定义多个名称相同的方法,但是参数列表不同,这就是方法的重载。

    方法的重载与返回值类型无关,它只有两个条件,一是方法名相同,二是参数列表不同。(注意与重写区别)

    参数列表不同包括参数个数不同、参数类型不同和参数的顺序不同。重载方便阅读,优化了程序设计。

    (2)、什么时候用重载?

    当定义功能相同时,但参与运算未知内容不同。那么,这时就定义一个函数名称表示功能,方便阅读,而通过参数列表的不同来区分多个同名函数。

    (3)、重载代码示例:

    1. public class Demo {  
    2.   
    3.     public static void main(String[] args) {  
    4.         System.out.println("第一个:" + add(5, 2));  
    5.         System.out.println("第二个:" + add(5, 2, 12));  
    6.         System.out.println("第三个:" + add(5.8, 2.9));  
    7.   
    8.     }  
    9.   
    10.     public static int add(int x, int y) {// 求两个整数的和  
    11.         return x + y;  
    12.     }  
    13.   
    14.     public static int add(int x, int y, int z) {// 求三个整数的和  
    15.         return x + y + z;  
    16.     }  
    17.   
    18.     public static double add(double x, double y) {// 求两个double类型数值的和  
    19.         return x + y;  
    20.     }  
    21.     // 错误示例  
    22.     // public static int add(int a,int b){//和第一个方法相同,报错。  
    23.     // return a+b;  
    24.     // }  
    25.   
    26. }  

    3、方法递归

    (1)、含义:

    方法的递归是指在一个方法的内部调用自身的过程,递归必须要有结束条件,不然就会陷入无限递归的状态,永远无法结束调用。

    (2)、出口:在做递归算法的时候,一定要把握住出口,也就是做递归算法必须要有一个明确的递归结束条件。这一点是非常重要的。其实这个出口是非常好理解的,就是一个条件,当满足了这个条件的时候我们就不再递归了。

    代码示例演示:

     

    1. public class Demo {  
    2.   
    3.     public static void main(String[] args) {  
    4.         System.out.println(recursion(5));  
    5.     }  
    6.   
    7.     public static long recursion(int n) {// 求一个数的阶乘的递归调用  
    8.         if (n == 1) {//出口  
    9.             return 1;  
    10.         }  
    11.         return recursion(n - 1) * n;  
    12.   
    13.     }  
    14.   
    15. }  
    简单分析:用递归的方法实现一个数的阶乘,非常重要的一点,明确递归结束的条件,即当该数为1的时候不再进行递归,返回递归最终的结果。即5*4*3*2*1=120
  • 相关阅读:
    SpringBoot整合ActiveMQ同时支持P2P和发布订阅模式(三)
    SpringBoot整合ActiveMQ的publish/subscribe发布订阅模式(二)
    Windows启动ActiveMQ报Wrapper Stopped错误
    IDEA从远程仓库克隆项目
    Git的安装
    IDEA上传项目到使用github上
    Mybaits的逆向工程
    posman测试接口需要登录验证的使用
    SSM整合SpringSecurity
    SpringBoot整合MongoDB的连接用户名和密码问题
  • 原文地址:https://www.cnblogs.com/stsinghua/p/6418515.html
Copyright © 2020-2023  润新知