【Java SE】(五)方法和递归

本文详细讲解了Java中的方法定义、调用,包括实参与形参的关系,以及方法的重载概念和方法签名。同时,介绍了递归的概念、执行过程,并给出了递归方法的代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


前言

所谓方法是什么呢?在Java中方法就是一个代码片段,能模块化的组织代码,能做带代码的反复使用,能在多个位置使用,让代发能够更好的理解和更简单,可以直接调用现有的方法开发,不必再重复去写相同功能代码。


一、方法的定义

在这里插入图片描述
注意
1.修饰符:这里使用public static 搭配;
2.返回值类型:必须与返回实体类型一致,如果没有返回值,定义方法时,返回类型必须使用void;
3.方法命名方式:小驼峰形式;
4.参数类表:如果有参数,需要指定参数类型,多个参数之间需要用逗号隔开,如若没有参数,则直接写( );
5.方法体:方法内部需要执行的语句;
6.Java中,方法必须存在于类中,方法不能嵌套使用,没有生命方法的说法。


二、方法的调用

过程:在这里插入图片描述
代码示例:
在这里插入图片描述
注意
1.定义一个方法时,不会执行方法的代码,只有方法被调用时才会执行;
2.一个方法可以被多次调用,一个类里可以有多种方法;


2.1实参和形参的关系

形参:形参只是方法中被借助的一个变量,用来保存方法被调用时传递过来的值。形参的名字可以随意取,对方法没有任何影响。
实参:实参是调用方法是传递给形参的值,相当于实参的值永远拷贝再形参中。

实参和形参本质上是两个实体,代码(示例):
在这里插入图片描述
上述代码可以发现,形参x和y的值发生改变,但是在main方法中i和t的值并没有改变,因为实参i和t是main方法中的两个变量,而形参x和y是nUM方法中的两个变量,两者存储变量的空间不同,因此两者的变量没有任何关系,只是在调用nUM这个方法时,将实参i和t中的值拷贝了一份传递给形参x和y。


2.2没有返回值的方法

方法的返回值是可以选择的
代码示例:没有形参
在这里插入图片描述
代码示例:有形参
在这里插入图片描述


三、方法的重载

3.1.方法的重载概念

现实生活中,我们说话常常会出现一词多义的情况,比如方便,具体的含义需要根据不同的场合描述,而在Java中,如果出现这种一词多义的情况,也就是多个方法的方法名相同,但是参数列表不同,我们就称这几种方法被重载了。
注意
1.方法名必须相同;
2.参数列表必须不同(参数个数不同,参数类型不同,类型顺序不同);
3.与参数返回类型是否相同无关,且只有返回类型不同的方法不能叫方法重载。
代码示例:
在这里插入图片描述


3.2方法签名

说完方法重载,我们会有一个疑问——在同一个作用领域不能定义两个相同名称的标识符,但为什么类中就可以定义方法名相同的方法呢?
这就是我们要说的方法签名——它是经过编译器编译时修改之后方法的最终名字。
构成的完整的方法名字:方法全路径名+参数列表+返回值类型
查看方式:
1.先对工程进行编译生成class字节码文件
2.打开cmd命令行;
3.控制台cmd查看文件所在目录
4.输入:javap_v字节码文件名即可


四、递归

4.1递归的概念

递归:一个方法在执行中调用自身就称为递归。
递归的难点在于找到递归起始条件递归公式
下面通过代码来示例:
在这里插入图片描述

4.2递推执行过程

递归要先清楚方法的执行过程,尤其是方法执行结束之后,回到调用位置继续往下执行。
代码示例:
在这里插入图片描述


总结

本章主要介绍了方法的定义、使用、重载的递归的概念,方法的调用可以方便我们的对于重复功能程序的编写,递归的使用需要看情况使用,还要找到起始条件和递归公式,方法重载则需要注意方法名和参数列表。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

@澄夏

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

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

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

打赏作者

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

抵扣说明:

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

余额充值