> JAVA 란?
프로그래밍 언어
실행환경(JRE) + 개발도구 (JDK) + 라이브러리(API)
-> 쉽고 빠르게 애플리케이션 개발 가능
- PC 애플리케이션 : IntelliJ, eclipse
- 웹 애플리케이션 : Spring
- 모바일 애플리케이션(안드로이드)
> 자바의 특징
- 객체지향 언어 = 프로그래밍 언어 + 객체지향 개념
- 자동 메모리 관리 : 가비지컬렉터(GC)
- 멀티 쓰레드를 지원
- 풍부한 라이브러리로 쉽게 개발 가능
- 운영체제에 독립적
> 자바 가상 머신(JVM)
프로그램이 실행되는 가상 컴퓨터(VM)
일반 애플리케이션은 OS(Windows) 위에서 실행되지만 Java 애플리케이션은 JVM 위에서 실행되어 운영체제와 독립적이라고 할 수 있다.
따라서 한번 작성하면, 어디서든 실행 가능 (JVM이 설치 되어있다면)
> 자바 프로그램 작성
- javac.exe - 자바 컴바일러. 사람이 작성한 문장을 기계어로 번역. 소스 파일(.java)을 클래스 파일(.class)로 변환
- java.exe - 자바 인터프리터. 자바 프로그램(클래스 파일)을 실행
- 클래스 - 자바 프로그램의 단위. 자바 프로그램은 클래스들로 구성
- main 메서드 - 자바 프로그램의 시작점. 이 메서드 없이는 실행 불가