C 언어 기능에 여러 기기에서 실행가능하도록 도와주는 공통 실행환경, 그리고 데이터와 메서드를 담는 클래스를 통해 객체를 만들 수 있는 언어
🐾 데이터 타입 : 입/출력 되는 데이터들을 관리할 수 있도록 특정한 분류를 제공한 것
🐾 메서드 : 어떤 프로그램이 하는 행동을 정의
🐾 Java 는 공통 실행환경이 있어서 여러 기기에서 실행 가능
운영체제 (운영환경) : 기기가 프로그램을 실행시크는 운영환경
앱 (애플리케이션) : 운영체제 위에서 실행되는 프로그램
🐾 Java는 세상과 닮아있는 갭라언어라 코드를 이해하기 쉽고 유지 보수가 쉽다
🐾 Java는 안정성이 높아서 프로그래밍 오류를 방지하고 보안상 안전
🐾 대규모 앱 개발이 가능
🐾 Java를 배우면 다양한 개발 도구와 라이브러리를 사용할 수 있다
- "자바 가상 머신" 이라는 뜻
- 가상 머신이란 가상의 기기를 만들어주는 것을 의미
- 다시 말해, 여러가지의 기기위에 Java 프로그램을 실행시킬 수 있는 가상의 기기를 만들어주는것을 의미
내가 작성한 코드가 운영체제가 읽을 수 있는 코드 (바이트 코드)로 java 컴파일러가 변환한 코드
java 컴파일러(compiler) 란? - 자바를 클래스로 변환해주는 파일, 내가 작성한 java 코드들 (.java 파일) 을 운영체제가 읽을 수 있는 바이트 코드 (.class 파일) 로 변환하는 변환기
운영체제가 읽은 바이트 코드를 기기(기계)가 실행할 수 있는 기계어로 번역
인터프리터의 효율을 높여주는 서포터 해석기
운영체제로 부터 JVM이 할당받은 메모리 영역
JVM으로 class(바이트 코드)를 불러와서 메모리에 저장함
메모리 영역에서 안쓰는 데이터를 주기적으로 흡수해가는 청소기
Runtime : 프로그램이 실행중인 상태
Runtime 시스템 : 프로그램이 실행중인 상태를 관리하는 시스템
- 자바 실행 환경 이라는 뜻
- JVM 을 설치하는 방법은 JRE를 설치하는 것
- JRE(JVM) 만 있다면 Java 프로그램을 실행만 시킬 수 있다
- JRE 는
.class
파일만 실행 가능
- 자바 개발 키트 라는 뜻
- JRE(JVM)의 기능을 포함
.java
파일들을.class
파일들로 변환해주는 Java Compiler(javac) 기능이 있다- 코드를 디버깅하는 jdb 등의 기능이 있다
🐾 JDK 디버깅 기능