inblog logo
|
from-web-developer
    JAVA

    Scope

    Dec 20, 2023
    Scope
     
    • scope (=범위)
    ScopeEx01(클래스)
    ㅤ
    ㅤ
    ㅤ
    ㅤ
    static (n2=2, m1( ), main) → 클래스명.@@
    ㅤ
    heap (n1=1, m2( ))
    ㅤ
    stack (n5=10)
    ⇒ 어디에서든지 접근 가능
    ㅤ
    ⇒ heap 끼리는 같은 scope여서 접근 가능
    ㅤ
    ⇒ 외부 접근 가능
    생명주기 stack < heap < static
    생명주기 stack < heap < static
    5라인 int n1 = 1 → static이 없기 때문에 heap(new)으로 메모리에 엑세스
6라인 static int n2 = 2 → static으로 바로 메모리에 엑세스
9라인 int n5 = 10 → static인 m1의 메소드 내부에 있기 때문에 stack으로 메모리에 엑세스
    5라인 int n1 = 1 → static이 없기 때문에 heap(new)으로 메모리에 엑세스 6라인 static int n2 = 2 → static으로 바로 메모리에 엑세스 9라인 int n5 = 10 → static인 m1의 메소드 내부에 있기 때문에 stack으로 메모리에 엑세스
    💡
    return 시 해당 main Queue 라인으로 가서 실행 및 종료 후 다음 라인 진행
    💡
    input = Queue 생성 시 메모리를 해당 라인에 넣는 것
    pop = 메모리 값을 CPU로 넘기면서 실행하는 것
    main 실행 후 메소드 실행 시 Queue와 stack이 동시 생성
메소드 내부의 변수 ⇒ 지역변수
    main 실행 후 메소드 실행 시 Queue와 stack이 동시 생성 메소드 내부의 변수 ⇒ 지역변수
    💡
    Queue (자료구조) 크기는 라인 수에 비례 Queue - 순서대로 실행 / stack - 임시 저장의 용도로 실행
    main Queue 종료 → 프로그램 종료
    main Queue 종료 → 프로그램 종료
     
    Share article

    from-web-developer

    RSS·Powered by Inblog