Java

[JAVA] Java의 특징과 장단점

Seong-Jun 2025. 1. 23. 17:40
728x90
반응형
SMALL

Java란?

제임스 고슬링과 선 마이크로시스템스 연구원들이 개발한 객체 지향 프로그래밍 언어이다. 가전제품이나 휴대용 장치 등에 사용하는 SW를 만들기 위해 독립적으로 작동하는 더 안정된 프로그래밍 언어가 필요하여 개발된 언어이다.

 

Java의 특징이자 장점

  • 운영체제에 독립적(이식성이 높음)
    • 어디서든 실행 가능
  • 객체지향언어
    • 절차 지향 언어와 다르게 객체를 만들고 결합하여 프로그램 개발
    • 캡슐화
      • 클래스 안에 관련 있는 변수와 함수를 하나의 클래스로 묶고 외부에서 직접 접근을 할 수 없게 하는 것
      • 접근제어자 : public, private, protected, default
    • 상속
      • 상위 클래스와 하위 클래스가 있고 하위 클래스는 상위 클래스를 선택하여 해당 상위 클래스를 상속받아 사용
      • 즉 기존 클래스를 재활용
    • 다형성
      • 하나의 객체가 여러 가지 타입을 가질 수 있는 것을 의미
    • 추상화
      • 클래스들의 공통 요소를 뽑아 클래스를 만드는 것
      • 즉, 완성된 것이 아닌 미완성된 클래스이다
      • 추상 클래스를 기반으로 한 인스턴스 생성은 불가하다
  • 사용하기 쉬운 언어
    • C나 C++의 포인터와 같은 복잡한 특징들 제거
  • 자동 메모리 관리 (Garbage Collection)
    • JVM이 자동으로 메모리를 관리해 줌
  • 프로그램이 안정적
  • 풍부한 기능을 제공하는 오픈 소스

Java의 단점

  • 수행속도가 느리고 메모리를 많이 소비함

JVM (Java Virtual Machine)

자바를 실행하기 위한 가상 기계로 플랫폼에 의존적 (운영체제 별로 다르다 ex) Windows일 경우 Windows JVM)

 

728x90
반응형
LIST