目录
一:方法的概念和使用
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)递归出口