자바 강의를 들은지는 조금 됐지만...
수업 내용을 따로 필기해놓으면 나중에 도움이 될 것같아 정리해본다!!
자바는 프로그래밍 언어로 배워두면 취업에 매우 도움이 될 것같다. 또 배우다 보니 재밌다!!
🔵 프로그램이란?
나열된 명령들의 집합
🔵 프로그래밍
- 프로그래밍 언어란?
사람이 컴퓨터에게 명령을 내릴 때 사용하는 언어
- 프로그래밍 언어의 종류?
Java
, C언어
, C++
, Python
등
- 일반 프로그램 실행 과정(ex.
C언어
)

- JAVA 프로그램 실행 과정

- JAVA 프로그램과 일반 프로그램의 실행구조 비교

💬 JVM? (Java Virtual Machine)
JAVA의 중간 코드를 실행할 수 있는 주체로, JAVA 프로그램과 OS 사이의 중개자 역할, JVM을 통해 OS에 종속되지 않고 사용하게 도와줌
- JAVA 프로그램의 실행과정
java source(.java)
를 컴퓨터가 이해할 수 있는 byte code(.class)
로 변환하여 JVM을 통해 실행
- JMA의 구성
- Class Loader : 모든 클래스(코드)는 참조 순간에 동적으로 JVM에 연결되며 메모리에 로딩
- Execution Engine : JVM은 Method Area의 Byte Code를 Execution Engine에 제공하여 Class에 정의된 내용대로 실행
- Runtime Data Area : 프로그램을 수행하기 위한 OS에서 할당받은 메모리 공간
- Class영역 - 사용하는 클래스 파일의 바이트 코드가 로드되는 곳으로 static 변수, 전역변수 등의 정보가 저장되며, JVM이 종료될 때까지 유지
Stack 영역 - 지역변수, 매개변수 등 함수의 호출부터 종료까지 유지
Heap 영역 - 참조형 변수(주소저장)들이 저장되는 영역(new)
- JAVA의 정의와 특징
- JAVA란? 미국의 Sun Microsystems사에서 개발한 객체지향 프로그래밍 언어
- JAVA의 특징
1. 객체 지향 언어
2. 어느 운영체제(OS)에 상관없이 실행
3. 메모리 관리를 개발자가 하지 않음
4. 동적이며 스레드를 지원
5. 네트워크 프로그래밍과 분산처리를 지원