> Java > java지도 시간 > 본문

Java 가상 머신의 스택 작동 원리 분석 예

WBOY
풀어 주다: 2023-04-18 10:46:02
앞으로
1013명이 탐색했습니다.

작동 원리

1. 서로 다른 스레드에 포함된 스택 프레임은 서로 참조할 수 없습니다.

2. 현재 메서드가 다른 메서드를 호출하는 경우 메서드가 반환되면 현재 스택 프레임은 이 메서드의 실행 결과를 현재 스택 바늘로 반환하고 가상 머신은 현재 스택 프레임을 삭제하여 이전 스택을 만듭니다. 프레임이 다시 현재 스택 프레임이 됩니다.

3. Java 메서드에는 함수를 반환하는 두 가지 방법이 있습니다.

하나는 일반적인 함수 반환이고, 다른 하나는 예외를 발생시키는 것입니다. 어떤 방법을 사용하든 스택 프레임이 팝됩니다.

인스턴스

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 가상 머신의 스택 작동 원리 분석 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:yisu.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿