【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.递归执行的过程分析
相关推荐
小羊没烦恼!16 分钟前
Hello Web API系列教程——Web API与国际化
java·服务器·前端·javascript·php
小荷才露尖尖角,早有蜻蜓立上头1 小时前
过滤器的4种创建方式
java
大圣编蚕2 小时前
Java ByteArrayInputStream 详解:从入门到实战
java·开发语言·算法
程序员阿明2 小时前
idea把插件啥的不默认放在C盘
java·ide·intellij-idea
linweidong2 小时前
中科闻歌Java面试题及参考答案
java·python·大模型·提示词·ai agent·mcp·rag原理
OpenAnolis小助手3 小时前
一句话看透 JVM,SysOM 诊断 Skill 新增 Java 应用诊断能力
java·开发语言·jvm·阿里云·操作系统控制台·sysom
ForteScarlet3 小时前
Kotlin 2.4.20 现已发布,新特性多不多?
android·java·开发语言·开源·kotlin·jetbrains
萧瑟余晖3 小时前
Java深入解析篇六十二之安全机制详解
java·开发语言
小刘在重生~3 小时前
Java 常用类|包装类 装箱拆箱、Integer 缓存面试题
java·python·缓存
Orange_sparkle3 小时前
Pi Agent vs LangGraph:从人机交互、企业 RAG 到持久化工作流的完整选型指南
java·网络·人机交互