본문 바로가기

Java/Java 란?2

가비지 컬렉션(Garbage Collection), 객체지향의 4가지 특징 - 가비지 컬렉션(Garbage Collection) - "자바 애플리케이션에서는 C/C++과 같이 개발자가 직접 free와 같은 메모리를 명시적으로 해제하는 행위를 하지 않는다. 대신 JVM의 Garbage Collector 가 더이상 사용되지 않는 메모리를 정리하는 과정을 하게 된다." # Stop The World Garbage Collection는 Garbage Collector가 Heap 영역의 메모리를 JVM이 판단해 더이상 사용되지 않는 인스턴스는 자동으로 할당 된 메모리를 삭제하는 역할을 하는 행위이다. 자바 어플리케이션은 GC를 실행하기 위한 Thread를 제외하고 모든 Thread를 멈추는데 이상태를 Stop The World 라고 한다. # 젊은 객체(Young Generations).. 2022. 5. 25.
자바의 동작 방식 - 자바 기초 - 자바의 동작 방식 1. 작성한 자바소스코드가(.java파일) 자바 컴파일러를 통해 자바 바이트코드로 변환. * 자바 가상 머신(JVM)이 이해할 수 있어야 하기 때문에 이진 표현법으로 변환을 해줌 2. 자바 가상 머신(JVM)의 클래스로더에게 전달을 하고 클래스로더는 동적로딩을 통해 필요한 클래스들을 데이터 영역 즉 JVM의 메모리에 올린다. * 동적로딩이란 필요한 시점에 클래스를 로딩하여 사용하는것을 의미 .동적로딩시 장점 - 컴파일 타임에 모든 클래스의 정보를 알 필요가 없다. - 외부 플러그인 확장 및 사용에 용이 - 실행에 필요한 정보만을 메모리에 로드할 수 있다. .동적로딩시 단점 - 런타임 에러를 알 수 없다. - 메모리에 미리 로드되어 있지 않기 때문에 프로그램 실행 속도 .. 2022. 5. 25.