从0到1,Java基础(5)——方法的定义、调用和重载

        本节学习目标:

        掌握方法的主要作用以及基础定义语法;

        掌握方法参数传递与处理结果返回;

        掌握方法重载的使用以及相关限制;

        掌握方法递归调用操作;

5.1 方法基本定义 

        方法(method,在很多语言中被成为函数)指的数一段可以被重复调用的代码,利用方法可以实现庞大程序的拆分,是一种代码重用的技术手段,并且更加适合于代码维护。

        在程序开发种经常会遇见各种重复的代码定义,为了方便管理这些代码,就可以通过方法结构保存这些重复的代码,实现可重复调用。方法定义格式:

public static 返回值类型 方法名称(参数类型 参数变量,...) {
    方法体;
    return 返回值;
}

         在进行方法定义时本处使用了static关键字,之所以这样定义是因为在当前阶段,我们定义的方法需要定义在主类之中,并且由主方法直接调用。在后续阶段的开发过程中是否使用static害需要根据具体的情况分析,在第七节的面向对象中我们将详细讲解static关键字。

        方法定义中的返回值与传递的参数的数据类型均为Java中定义的数据类型(基本数据类型、引用数据类型),在方法中可以进行返回数据的处理,如果需要返回数据可以使用return语句来描述,return所返回的数据类型与方法定义的返回值类型相同,如果不需要返回数据,则该方法可以用void进行声明。实例:定义一个无参数接收无返回值的方法。

public class JavaDemo {
    public static void main(String[] args) {
        printInfo();    //方法调用
    }
    /**
     * 定义一个无参接收无返回值的方法
     */
    public static void printInfo() {
        System.out.println("这是一个方法");
    }
}

程序执行结果:

这是一个方法

        同样的,我们继续定义一个有参有返回值的方法 。

public class JavaDemo {
    public static void main(String[] args) {
        int sum = add(2,3);    //调用方法并接收返回值
        System.out.println(sum);
    }
    /**
     * 定义一个有参有返回值的方法
     */
    public static int add(int a , int b) {
        return a+b;
    }
}

程序运行结果:

5

        在方法中return语句除了可以返回处理结果外,还可以结合分支语句实现方法的结束调用。

5.2 方法重载

        方法重载是是采用技术形式实现方法名称可重用设计的一种手段。

        方法重载的方法名称进行重用的一种技术形式,其最主要的特点为“方法名称相同,参数类型或个数不同”,在调用时根据传递的参数类型和个数不同执行不同的方法体。

        就比如一个方法名称是用来执行加法的,但是我们可能需要2个整数相加、或者2个小数相加、或者3个整数相加等,这个时候就需要对这个方法名定义多个方法体,此时就需要方法重载。

        实例:

public class JavaDemo {
    public static void main(String[] args) {
        System.out.println(sum(2,3));       //调用2个int参数的方法
        System.out.println(sum(2,3,4));  //调用3个int参数的方法
        System.out.println(sum(2.1,3.2));   //调用2个double参数的方法
    }
    /**
     * 定义一个计算2个整数和的方法
     */
    public static int sum(int x , int y) {
        return x+y;
    }
    /**
     * 定义一个计算3个整数和的方法
     */
    public static int sum(int x , int y , int z) {
        return x+y+z;
    }
    /**
     * 定义一个计算2个小数和的方法
     */
    public static double sum(double x , double y) {
        return x+y;
    }
}

 程序运行结果“:

5
9
5.300000000000001

         在方法重载时考虑到标准性一般都建议统一返回值类型。

5.3 方法递归调用

        递归调用是一种特殊的方法嵌套调用形式,可以利用递归调用实现更为复杂的计算。

        递归调用是一种特殊的调用形式,指的是方法自己调用自己的形式,但是在进行递归操作的时候必须满足以下条件:

        递归调用必须有结束条件;

        每次调用的时候都需要根据需求改变传递的参数内容;

        在应用层项目开发上一般很少见递归调用,因为递归调用处理不当很容易出现内存溢出的问题。 

        实例:利用递归实现1~100的数字累加

public class JavaDemo {
    public static void main(String[] args) {
        System.out.println(sum(100));       //1~100,限制范围
    }
    /**
     * 定义一个累加的方法
     */
    public static int sum(int num){
        if (num == 1) {                     //结束递归
            return 1;                       //最后一次递归返回1
        }
        return num + sum(num - 1);     //通过递归累加
    }
}

        本节关于方法的学习到这里就结束啦,编程语言的学习永远需要自己多去动手写代码,多加练习才是提升代码能力的最快途径。我们下一节再见啦~

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

是憧憬呀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值