JAVA 기초

[JAVA 기초] JAVA의 정석 - Ch.01 자바를 시작하기 전에 (정리)

beginner-in-coding 2025. 1. 15. 14:17

Ch.01 자바를 시작하기 전에


-      자바(java Programing Language)

  • 자바란?
    • 중요 개념: 상속 (Inheritance), 캡슐화 (Encapsulation), 추상화 (Abstraction), 다형성 (Poymerphism) 
    • 구성 요소: JDK (Java Development Kit), JRE (Java Runtime Environment), JVM (Java Virtual Machine)
    • 분야: 웹 애플리케이션, 모바일 애플리케이션, 데스크톱 애플리케이션, 서버/백엔드 시스템, 임베디드 시스템 및 IoT, ..
  • 자바의 역사
    • 1995 마이크로시스템즈(Sun Microsystems, 현재 Oracle)에 의해 개발된 객체 지향 프로그래밍 언어
  • 자바 언어의 특징
    • 플랫폼 독립성 (Platform Independence): 다양한 운영체제에서 실행
    • 객체 지향 언어 (Object-Oriented Programming): 상속, 다형성, 캡슐화, 추상화
    • 자동 메모리 관리 (Automatic Memory Management): 가비지 컬렉션(Garbage Collection)
    • 멀티스레딩 (Multithreading): 동시에 여러 작업 가능
    • 네트워크 프로그래밍 지원: Socket, URL, ..
    • 강력한 예외 처리 (Exception Handling): 오류 예측과 처리 기능 제공
    • 보안성 (Security): 다양한 보안 기능 제공
    • 동적 로딩 (Dynamic Loading): 프로그램이 실행 중에도 클래스를 로드, 필요에 따라 새로운 클래스를 동적으로 로딩
    • 버전 호환성 (Backward Compatibility): 하위 호환성 보장 
  • JVM
    • 자바를 실행하기 위한 가상 기계
    • Java application은 JVM과만 상호작용이 일어나기 때문에 OS에서 프로그램 변경 없이 사용 가능 

-      자바 개발 환경 구축하기

  • 자바 개발도구(JDK) 설치하기
    • JDK를 설치하면 Java를 개발하는데 필요한 프로그램이 설치
      • JDK: 자바 개발 도구
      • JRE: 자바 실행 환경
      • JVM: 자바 가상 머신
  • Java API 문서 설치하기

-      자바로 프로그램 작성하기

  • Hello.java
    • Hello.java 작성 → 컴파일 (javac.exe) → Hello.class 생성 → 실행 (java.exe) 
    • public class의 경우, 소스파일의 이름은 class의 이름과 일치
  • 자주 발생하는 에러와 해결 방법
    • 에러 메세지를 읽고 해당 부분의 코드 확인, 주위도 확인
    • 이상이 없을 경우 논리적인 구조 확인, 사소한 것 확인
    • 의심 가는 부분 주석 처리 또는 테스트 진행
  • 주석(comment)
    • 코드의 이해를 위한 설명서
    • 범위 주석: /* */
    • 한 줄 주석: //