JAVA函数调用底层内存过程

这样的一段代码,在底层的实现
如:

public class Demo{
	public static void main(Stringp[] args){
	
	int i = add(5,6);		//函数调用
	System.out.println("i="+i);
	}
	
	//函数功能:相加
	public static int add(int a, int b){
	return a+b;
	}
}

这段代码的实现是:
先把main函数调进入内存(ps:程序总是先从mian函数开始!!!)

内存大概是这样子的:

在这里插入图片描述
然后定义了一个int i = add(5, 6);
在这里插入图片描述
这时调用了add函数, 那么就把这个函数里面的内容放到了内存里面
并把实参(5和6)传给了形惨(int a, int b)在这里插入图片描述在这里插入图片描述
然后把它们两个相加的结果给到 int i;在这里插入图片描述
然后add(int a, int b)函数退出内存在这里插入图片描述
最后执行输出语句把i输出了, main函数也退出内存在这里插入图片描述
然后就把结果显示出来了.

大致的底层运行就是这样.

底层内存的运行用到了数据结构-栈的知识

因为栈的方式就是先进后出

所以main函数最先进栈, 那么它就是最后出栈的

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值