方法调用的内存图
方法在没有被调用的时候,在方法区中的字节码文件中存放。
方法在被调用的时候,进入到栈内存中运行。
方法使用的常见问题
- 方法的编写顺序无所谓
- 方法与方法之间是平级关系,不能嵌套定义。
- 方法的返回值类型为void(无返回值),方法内则不能使用return返回数据,如果方法的返回值类型写出了具体类型,方法内部必须使用return返回对应类型的数据。
- return语句下面,不能编写代码,因为永远执行不到,属于无效的代码。
- 方法不调用就不执行,调用时必须严格匹配方法的参数情况。
- 有返回值的方法调用时可以选择定义变量接受结果,或者直接输出调用,甚至直接调用;无返回值方法的调用只能直接调用。
return 编写顺序 不能嵌套 返回值多种用法 有返回值类型必须返回相应类型的数据
着重注意返回值类型和返回值类型。
一个方法中可以存在多个return 返回不同数值的情况。
调用时必须严格匹配方法的参数情况。 数据类型 数据个数
调用 : (有返回值)
定义变量接收
直接输出 (可以直接使用)
直接调用 (调用这个方法,执行这个方法,但是不用返回值!)
方法的参数传递机制
基本参数类型
参数传递的机制:值传递 //适用于所有参数传递
在传输实参给方法的形参时,并不是传输实参变量本身,
而是传递实参变量中存储的值,这就是值传递。
注意:
实参:在方法内部定义的变量。
形参:在定义方法时,“()”中声名的参数。
引用参数类型
最典型的就是数组的传递,
传递的是数组的地址,可以改变其中的元素。