1.方法在计算机中的执行原理
方法被调用的时候,是进入到栈内存中运行
栈:是先进后出的,后面进去的方法会先进去,用完里面的方法就会弃掉
例如:现在有三个方法,分别是方法A、方法B、方法C
先加载main方法,方法A调用方法B,方法B调用方法C
栈中先会加载main方法,然后在加载方法A,方法B,方法C,最终在栈中就是下图这样
把方法C执行完,方法C就会弹出栈,然后在执行方法B,在执行方法A然后就回到了main方法
解析:先在方法去加载class文件,然后加载出两个方法,一个main方法和一个sum方法,然后在栈中加载main方法,里面需要调用sum方法,然后在加载sum方法,sum方法运行完将最后的结果30返回给rs,然后sum方法将弹出栈,main方法在输出一下最后结果
解析:先在方法区加载class文件,然后扫描文件发现有四个方法,分别是main、study、sleep、eat,然后在栈中加载main方法,继续运行,发现要调用study方法,然后去调用study方法,发现study方法内需要调用eat方法,然后去调用eat方法,然后执行eat方法内的输出语句"吃饭",eat方法执行完就弹出栈,然后在继续回到study方法,继续运行下一句打印语句"学习",然后继续下一句发现是个方法,然后去调用sleep,sleep加载进栈,然后运行sleep输出"睡觉",然后sleep运行完毕就弹出栈,之后study也运行完也弹出栈,最后回到main方法,main方法运行完也弹出栈就结束了