
자바에 대해서 2학년에 공부하고, 공부를 했었는데 까먹은 것도 꽤 있고 개발을 진행하다보니 그때 공부할때 자세히 안하고 넘어 간 부분이 꽤 있었던 거 같다. 그래서 책을 보고 조금 조금 정리해 보려고 한당
JVM의 메모리 공간은 크게 Method(Static) 영역, Stack 영역, Heap 영역으로 구분
클래스 내부에는 필드, 메서드, 생성자, 이너 클래스 4가지 구성 요소가 포함될 수 있다. 또한 this에 대해서도 정리만 하고 넘어가자 필드와 지역변수 필드 : 클래스의 중괄호 안에 선언된 변수 지역변수 : 메서드의 중괄호 안에 선언된 변수 > 필드와 지
Static 키워드를 통해 생성된 정적멤버들은 Heap영역이 아닌 Static영역에 할당됩니다. static 제어자에 대해서 알아보자
Java의 객체지향언어에 대해
상속과 추상에 관하여
멀티 테스킹, 멀티 프로세싱, 프로세스, 스레드 등에 대해서 자세히 알아보자
멀티태스킹이 무조건 효율적인가? 그건 또한 아니다.
JVM이란? > JVM은 ClassLoader를 통해 바이트코드(.class)를 로딩하고, 실행엔진을 통해 코드를 실행하며,메모리관리(GC)와 스레드 관리 등 런타임 환경을 제공하여 자바 어플리케이션이 플랫폼 독립적으로 동작하도록 합니다. JVM 동작방식 자바 프로
클래스 로더는 자바 컴파일러가 변환해둔 ByteCode(.class)파일을 동적 로딩합니다.실행 엔진이 사용할 수 있도록 JVM메모리에 적재하는 역할을 합니다. 로딩 -> 링크 -> 초기화 단계를 진행합니다.
우리가 자바소스 코드를 만들면, 자바 컴파일러는 우리가 만든 자바소스코드를 바이트코드로 변환합니다.변환된 파일을 JVM의 클래스로더는 로딩->링크->초기화 과정을 거칩니다.
JVM의 메모리구조는 Method Area, Heap, Stack, PC Registers, Native Method Stack으로 구성되어 있습니다.