자바의 정석 <기초편> 📌chapter 1. 자바를 시작하기 전에

모깅·2023년 1월 28일
0

📖 01. 자바의 특징

  • 운영체제에 독립적이다.
    -> 자바 응용프로그램은 운영체제나 하드웨어가 아닌 JVM하고만 통신하기 때문이다.
  • 객체지향언어이다. (object - oriented - programming language)
    -> 상속, 캡슐화, 다형성이 잘 적용된 언어이다.
  • 자동 메모리 관리(Gargage Collection)
    -> 프로그램을 실행하면 가비지컬렉터(garbage collector)가 자동적으로 메모리를 관리해준다.
  • 네트워크와 분산처리를 지원한다.
    -> 인터넷과 대규모 분산환경을 염두에 둔 까닭인지 풍부하고 다양한 네트워크 프로그래밍 라이브러리(java API)를 통해 비교적 짧은 시간에 네트워크 관련 프로그램을 쉽게 개발 할 수 있다.
  • 멀티쓰레드를 지원한다.
    -> 자바에서 개발되는 멀티쓰레드 프로그램은 시스템과는 관계없이 구현이 가능하다. 그리고 여러 쓰레드에 대한 스케줄링(sheduling)을 자바 이터프리터가 담당하게 된다.
  • 동적 로딩(Dynamic Loding)을 지원한다.

📖 02. 자바 가상 머신(JVM)

  • JVM : java virtual machine
    -> virtual machine은 소프트웨어로 구현된 하드웨어를 뜻하는 넓은 의미의 용어이다.
  • '가상 컴퓨터(virtual computer)'는 실제 컴퓨터(하드웨어)가 아닌 소프트웨어로 구현된 컴퓨터라는 뜻으로 컴퓨터 속의 컴퓨터라고 생각하면 된다.
    -> 자바로 작성된 애플리케이션은 모두 이 가상 컴퓨터(JVM)에서만 실행되기 때문에 반드시 JVM이 필요하다.

  • java 애플리케이션은 JVM을 한 번 거치기 때문에 속도가 느리다는 단점을 가지고 있다.

📖 03. 자바 개발도구(JDK)

  • Java Development Kit
    -> JDK를 설치하면, 자바가상머신(JVM)과 자바 클래스 라이브러리(Java API)외에 자바를 개발하는데 필요한 프로그램들이 설치된다.




[출처] 자바의 정석 <기초편> (남궁 성 지음)

profile
멈추지 않기

0개의 댓글