본문 바로가기
Java/Java language

[JAVA]2. 자바의 특징(2)

by oomm112 2021. 7. 26.

A. 자동 메모리 관리 

 - 자바에서는 JVM이 지속적으로 메모리를 감시하면서 더이상 사용되지 않는 메모리를 해제시켜 줍니다.

 (c/c++ 등 다른 언어의 경우 더이상 사용하지 않는 메모리의 경우에는 개발자가 직접 메모리를 해제해야 합니다)

 - 하지만 자바는 Garbage Collection을 통해 자동으로 메모리가 관리되기 때문에 개발자가 신경을 쓸 필요가 없습니다.

 

B. 운영체제 독립적

 - 자바의 개발환경과 배포환경이 다른경우에 프로그램을 다시 컴파일 할 필요가 없이 실행이 가능하다.

 - 자바가 JVM위에서 돌아가기 때문에 JVM에서 별도의 자바컴파일러를 통해 사용자의 코드를 변환합니다.

  (운영체제가 바뀜에도 컴파일이 필요없이 자유롭다!)

 

C. 멀티쓰레드 프로그래밍 가능

 - 자바에서는 하나의 프로그램에서 여러개의 쓰레드가 동시에 실행할수 있는 환경을 지원합니다.

 

D. 동적로딩(Dynamic Loading)을 지원

 - 자바에서는 애플리케이션이 실행될 때 모든 객체가 생성되는게 아닌, 객체가 필요한 시점에 클래스를 동적으로 로딩한후 생성합니다.

 - 동적로딩은 클래스가 일부분 변경될 시에는 다시 컴파일을 하지 않아도 되는 좋은점이 있습니다.

 - 단 그때 그때 마다 메모리에서 불러오는 작업이기 때문에 프로그램 실행속도는 정적로딩보다는 느립니다.

 

반응형

댓글