Java Overview
자바 개요
- Oracle 사가 License를 보유하고 있는 프로그래밍 언어로,
Oracle은 JDK(Java Development Kit)를 배포하여
자바로 프로그램 개발을 보다 쉽게 할 수 있도록 기술지원을 이행하고 있다.
- 자바의 특징은 아래와 같다:
- 모든 OS에서 실행 가능
- 객체 지향 프로그래밍
- 메모리 자동 정리
- 풍부한 오픈 소스 라이브러리
- 자바 버전을 표기할 때에는 아래와 같은 관례를 따른다:
- JDK 17
- Java 개발 도구에 중점을 둔 표현이다.
- JRE 17
- Java 실행 환경에 중점을 둔 표현이다.
- Java SE - 17
- Java Specification에 중점을 둔 표현이다.
Java SE (Java Platform Standard Edition)
- 데크스톱·서버·임베디드 시스템을 위한 표준 자바 플랫폼이다.
- Java SE는 표준적 컴퓨팅 환경을 지원하기 위한 JVM Specification 및 API 집합으로 구성된다.
- Java EE, Java ME 등 다른 플랫폼은 그 목적에 따라 Java SE에서 API를 추가해 구성했거나,
JVM Specification 및 API의 일부를 택하여 구성한 플랫폼이다.
JDK (Java Development Kit)
- Java SE (Java Standard Edition)의 구현체이다.
- JDK는 크게 아래와 같이 구분된다:
구분 | Open JDK | Oracle JDK |
라이선스 | - GNU GPL Version 2 | - Oracle Technology Network License |
사용료 | - 무료 | - 무료 (개발 및 학습) - 유료 (상업) |
개발 소스 공개 의무 | - 없음 | - 없음 |
다운로드 | - jdk.java.net (URL) - adoptium.net (URL) |
- oracle.com (URL) |
javac
Commands
javac -d <path_of_storage> <path_of_source/*.java>
javac -d bin src/ch01/sec06/Hello.java
- *.java
소스 파일은 javac
명령을 통해 OS에 독립적인 바이트코드(*.class)로 컴파일 할 수 있다.
- path_of_storage
는 바이트코드를 저장할 위치를 의미하며,
path_of_source/*.java
는 컴파일할 자바 소스 파일의 위치와 파일명을 의미한다.
java
Command
java -cp <path_of_bytecode> <class_hierarchy>
java -cp bin ch01.sec06.Hello
- 바이트코드 파일은 java
명령어를 통해 기계어로 번역하고 실행할 수 있다.
Reference: 신용권, 임경균; 이것이 자바다(개정판); 한빛미디어; 2022