thecode

[JAVA] 자바언어의 특징 본문

JAVA

[JAVA] 자바언어의 특징

hyeontack 2020. 8. 24. 09:39

 

안녕하세요 THECODE에 방문해주셔서 감사합니다.


이 내용에 대해서 잘 모르더라도 너무 걱정할 필요없습니다.

읽어보면서 이런 특징들이 있구나 정도로 이해하시면 됩니다.

뒤에 가면서 내용을 배우다 보면 이해가 자연스럽게 될겁니다.

객체지향 프로그래밍 언어(object-oriented pro-gramming language)

상속, 캡슐화, 다형성

운영체제(Operating System, 플랫폼)에 독립적

  • 자바 응용프로그램은 JVM(Java Virtual Machine)하고만 통신하고 JVM이 자바 응용프로그램으로부터 전달받은 명령을 해당 운영체제가 이해할 수 있도록 변환하여 전달한다.
  • 자바로 작성된 응용프로그램은 운영체제의 종류나 하드웨어에 관계없이 실행이 가능해서 운영체제에 따라 프로그램을 변경할 필요가 없다.
  • 한번 작성하면 어디서나 실행된다. (Write once, run anywhere)
  • 클래스 라이브러리(Java API)
    Java API를 통해 프로그래밍에 필요한 요소들을 기본적으로 제공
  1. 자동 메모리 관리(Garbage collection)
    가비지컬렉터(garbage collector)가 자동으로 메모리를 관리해준다.

    프로그래머가 프로그래밍에 집중할 수 있도록 해준다.

  2. 네트워크와 분산처리를 지원
    네트워크 프로그래밍 라이브러리(Java API)를 통해 네트워크 관련 프로그램을 쉽게 개발할 수 있도록 지원한다.

  3. 멀티쓰레드를 지원
    일반적으로 운영체제에 따라 구현방법이나 처리가 다르지만, 자바의 멀티쓰레드(multi-thread) 프로그램은 시스템과는 관계없이 구현가능

    관련된 라이브러리(Java API)가 제동되므로 구현이 쉽다.

     

    여러 쓰레드에 대한 스케줄링(scheduling)을 자바 인터프리터가 담당

  4. 동적 로딩(Dynamic Loading)을 지원
    자바로 작성된 애플리케이션은 여러 개의 클래스로 구성되어 있다. 자바는 동적로딩을 지원하기 때문에 실행 시에 모든 클래스가 로딩 되지 않고 필요한 시점에 클래스를 로딩하여 사용할 수 있다.

    일부 클래스가 변경되어도 전체 애플리케이션을 다시 컴파일하지 않아도 된다.

Comments