【JavaEE重点知识归纳】第5节:方法

目录

一:方法的概念和使用

1.什么是方法

2.方法的定义

3.方法的调用过程

4.实参和形参的关系(重点)

二:方法重载

1.方法重载概念

2.方法签名

三:递归

1.递归的概念

2.递归执行的过程分析

一:方法的概念和使用

1.什么是方法

在Java中方法就类似于C语言中"函数"的概念。能够让代码重复使用,不必每次使用相同操作时重复编写程序。能够更好的理解代码。

2.方法的定义

(1)定义;

复制代码
//方法定义:
修饰符 返回值类型  方法名称 (参数类型 形参……){
    方法体;
    return 返回值;
}

比如main方法

(2)注意:

1)修饰符:现阶段就是直接使用public static固定搭配

2)返回值类型:如果方法有返回值,返回值类型必须要与返回的实体类型一致,如果没有返回值则为void

3)方法名字采用小驼峰命名(即除了第一个单词的首字母不用大写以外,每个单词的首字母都需要大写)

4)参数列表:如果方法没有参数,()中什么都不用写,如果有参数,需要指定参数类型,多个参数之间用逗号隔开

5)方法体:方法内部要执行的语句

6)在Java当中,没有方法声明一说,方法必须写在类当中,方法不能嵌套

3.方法的调用过程

(1)过程:调用方法------>传递参数------>执行被调用方法的方法体------>被调方法结束返回------>回到主调方法继续向下执行

(2)注意:

1)定义方法的时候,不会执行方法的代码,只用调用的时候才会执行

2)一个方法可以被多次调用

3)使用方法,避免使用二重循环,让代码简单清晰

4.实参和形参的关系(重点)

(1)形参:只是方法在定义的时候需要借助的一个变量,用来保存方法在调用时传递的一个值。

(2)在Java中,实参的值永远都是赋值给形象的,传值使用的时候,改变形参的值不会改变实参的值

在swap函数交换之后,形参x,y的值发生了改变,但是main方法中a,b还是交换之前的值。原因是实参和形参是没有任何关联的变量,在swap方法在调用的时候,只是将实参a,b的值赋值给形参。

(3)在Java中不允许拿局部变量和栈上的地址,即直接传址不可用,但是可以通过数组来实现传引用类型参数

二:方法重载

1.方法重载概念

(1)在Java中,如果多个方法名字相同,参数列表不同,则称该几种方法被重载了。

上面三个add方法构成了方法重载。

(2)注意:

1)方法名必须相同

2)参数列表必须不同(参数的个数不同、参数的类型不同、类型的次序不同)

3)返回值类型不做要求

2.方法签名

(1)在同一个作用域中不能定义两个相同名称的标识符。比如:方法中不能定义两个名字一样的变量,那么为什么类中可以定义方法名相同的方法?由此得出了方法签名的概念

(2)方法签名:经过编译器编译修改过之后方法最终的名字。具体方法:方法全路径名+参数列表+返回值类型,构成方法完成的名字。(这个不做掌握,了解即可【方法名相同但方法签名不同】)

三:递归

1.递归的概念

(1)一个方法在执行过程中调用自身,就称为"递归"

(2)递归的必要条件:

1)将原问题划分为其子问题,注意:子问题必须要与原问题的解法相同。

2)递归出口

2.递归执行的过程分析
相关推荐
hqxstudying18 分钟前
java依赖注入方法
java·spring·log4j·ioc·依赖
·云扬·26 分钟前
【Java源码阅读系列37】深度解读Java BufferedReader 源码
java·开发语言
Bug退退退1231 小时前
RabbitMQ 高级特性之重试机制
java·分布式·spring·rabbitmq
小皮侠1 小时前
nginx的使用
java·运维·服务器·前端·git·nginx·github
Zz_waiting.2 小时前
Javaweb - 10.4 ServletConfig 和 ServletContext
java·开发语言·前端·servlet·servletconfig·servletcontext·域对象
全栈凯哥2 小时前
02.SpringBoot常用Utils工具类详解
java·spring boot·后端
兮动人2 小时前
获取终端外网IP地址
java·网络·网络协议·tcp/ip·获取终端外网ip地址
呆呆的小鳄鱼2 小时前
cin,cin.get()等异同点[面试题系列]
java·算法·面试
独立开阀者_FwtCoder2 小时前
"页面白屏了?别慌!前端工程师必备的排查技巧和面试攻略"
java·前端·javascript
Touper.2 小时前
JavaSE -- 泛型详细介绍
java·开发语言·算法