프로그래밍 언어의 역할은?
코드를 작성(사람) -> 컴파일러를 통해 컴퓨터가 이해할 수 있는 기계어로 만듬(0101..) -> 실행
이식성이 높은 언어
- 여러 환경에서 사용 가능
- 자바컴파일러 -> 바이트코드 -> 윈도우or리눅스에서 실행
객체 지향 언어 -> OOP (Object Oriented Programming)
- 부품 객체를 만들고, 이것들을 조합해서 전체 프로그램을 완성하는 기법
자바는 처음부터 OOP 개발용 언어로 설계
- 캡슐화, 상속, 다형성
메모리를 자동으로 관리 (Garbage Collection)
다양한 애플리케이션 개발 가능
- 웹서버/안드로이드/Stand Alone(유틸, 게임, ERP, ...) 등
풍부한 오픈 소스 라이브러리
● Oracle JDK - https://www.oracle.com/technetwork/java/javase/downloads
● Open JDK - https://github.com/ojdkbuild/ojdkbuild
● AZUL - https://kr.azul.com/downloads
JDK (Java Development kit) = JRE + 개발도구
- 자바 프로그램 개발하고 실행하기 위해 반드시 설치
JRE (Java Runtime Environment) = JVM + 표준 클래스 라이브러리
- 자바 프로그램을 실행만 할 경우 설치
API 도큐먼트
- JDK에서 제공하는 표준 클래스 라이브러리 설명해 놓은 HTML 페이지들
- http://docs.oracle.com/javase/버전/docs/api/
소스 작성에서부터 실행까지
- .java 소스 파일 작성
-> 컴파일러(javac.exe)로 바이트 코드 파일(.class) 생성
-> JVM 구동 명령어(java.exe)로 실행