方法的定义
方法其实就是完成特定功能的代码块
在很多语言里面都有函数的定义
函数在Java中被称为方法
格式:
修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2…) { 函数体; return 返回值; }
方法格式解释
A.修饰符 可以理解为访问的权限
B.返回值类型 用于限定返回值的数据类型,如果是类名,则返回的是类的实例对象
C.方法名 一个名字,为了方便我们调用方法
C.参数类型 用于接收调用方法时传入的数据的类型
D.参数名 用于接收调用方法时传入的数据的变量,如果是类名,则返回的是类的实例对象
E.方法体 完成功能的代码
F.return 结束方法,把返回值带给调用者
写一个方法有两个明确:
A.返回值类型 明确功能结果的数据类型
B.参数列表 明确有几个参数,以及参数的类型
有明确返回值的方法调用:
单独调用,没有意义
输出调用,有意义,但是不够好,因为我不一定非要把结果输出
赋值调用,推荐方式
没有明确返回值的函数调用:
其实就是void类型方法的调用
只能单独调用(可以理解为执行某种功能不需要有返回结果)
方法重载
方法重载概述
在同一个类中,允许存在一个以上的同名方法,只要它们的参数个数或者参数类型不同即可。
方法重载特点
与返回值类型无关,只看方法名和参数列表
在调用时,虚拟机通过参数列表的不同来区分同名方法
方法的参数如果是基本数据类型:形式参数的改变不影响实际参数。
形式参数:用于接受实际参数的变量
实际参数:实际参与运算的变量
类加载在方法区中,当调用方法时会把类对应方法从方法区调到栈中。因为基本类型的值就是在栈中,所以向方法中传基本类型就等同于复制了一份值给方法中的参数。而向方法中传引用类型的参数,是把对内存中的地址传给方法的参数,方法自然会操作这个堆内存中的值。