您好,登錄后才能下訂單哦!
這篇文章主要講解了“java虛擬機中棧的運行原理是什么”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“java虛擬機中棧的運行原理是什么”吧!
運行原理
1、不同線程中所包含的棧幀是不允許存在相互引用的。
2、如果當前方法調用了其他方法,方法返回之際,當前棧幀會傳回此方法的執行結果給當前一個棧針,并且虛擬機會丟棄當前棧幀,使得前一個棧幀重新成為當前棧幀。
3、Java方法有兩種返回函數的方式,一種是正常的函數返回,使用return指令;另一種是拋出異常。不管使用哪種方式,都會導致棧幀被彈出。
實例
public class StackFrameTest { public static void main(String[] args) { StackFrameTest stackFrameTest = new StackFrameTest(); stackFrameTest.method1(); } public void method1(){ System.out.println("method1()開始執行"); method2(); System.out.println("method1()執行結束"); } public int method2(){ System.out.println("method2()開始執行"); int i = 100; int m = (int)method3(); System.out.println("method2()即將結束"); return i + m; } public double method3(){ System.out.println("method3()開始執行"); double j = 3.1; System.out.println("method3()即將結束"); return j; } }
感謝各位的閱讀,以上就是“java虛擬機中棧的運行原理是什么”的內容了,經過本文的學習后,相信大家對java虛擬機中棧的運行原理是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。