执行代码
public class Mothod01{
public static void main(String[] args){
Person p1 = new Person();
int returnRes = p1.getSum(10,15);
System.out.println("getSum方法返回的值=" + returnRes);
}
}
class Person{
public int getSum(int num1,int num2){
int res = num1 + num2;
return res;
}
}
Person p1 = new Person();
现在栈里面的main栈中产生一个Person p1 = new...,同时在堆里面有个对象,并且由main栈中的Person p1 = new...指向对象
在栈里面生成一个getSum栈(独立空间)
执行
int returnRes = p1.getSum(10,15);
此时会将10和15分别赋给num1和num2
public int getSum(int num1,int num2){
int res = num1 + num2;
return res;
}
在getSum栈中将num1和num2分别赋10,15,res赋25,return res会赋给int res = ,即将计算结果赋给int res
当返回以后getSum空间被释放,
方法调用小结:
1.程序执行到方法时,就会开辟一个独立的空间(栈空间)
2.当方法执行完毕,或者执行到return语句时,就会返回
3.返回到调用方法的地方
4.返回后继续执行方法后面的代码
5.每次返回后当前的栈就会退出,直至main栈(主方法)退出,即程序退出