본문 바로가기

개발공부/스파르타코딩

[ 정규 ] Java 문법 종합반 1주차

JVM

정의. Java Virtual Machine은 다양한 환경(Window, Linux 등) 위에서 자바 프로그램을 실행시킬 수 있는 가상 기기

 

구성.
인터프리터 - 운영체제가 읽은 바이트코드를 기계가 실행할 수 있는 기계어로 번역
클래스 로더 - JVM으로 클래스를 불러와 메모리에 저장
메모리 영역 - 자바 데이터를 저장하는 영역
JIT 컴파일러 - 인터프리터의 효율을 높여주는 컴파일러
가바지 컬렉션 - 메모리 영역에서 안쓰는 데이터를 주기적으로 정리

 

JRE & JDK

JRE(Java Runtime Environment)
JVM, 자바 클래스 라이브러리 등을 포함하고 있는 자바 실행환경

JDK(Java Development Kit)
JRE, 컴파일러, Javadoc 등을 포함하고 있는 자바 개발 도구

Java

정의. Sun Microsystems가 개발한 객체지향 프로그래밍 언어

 

변수-저장 영역.
Stack: 정적으로 할당된 메모리 영역으로 기본형 변수 값, 참조형 변수의 주소값이 저장 됨
Heap: 동적으로 할당된 메모리 영역으로 참조형 변수의 실제 데이터가 저장 됨

 

변수-기본형.
논리: boolean
문자: char
정수: byte, short, int, long
실수: float, double

변수-래퍼 클래스.
논리: Boolean
문자: Character
정수: Byte, Short, Integar, Long
실수: Float, Double

변수-참조형.
문자열: String
그 외: Object, Array, List...
형 변환.
명시적, 암묵적 형 변환 2가지 형태가 있으며, 명시적 형 변환의 경우 값 앞에 변환 타입을 넣어줘야[캐스팅] 한다.

명시적.
int star = (int)4.5

암묵적.
1. 작은 크기의 타입에서 큰 크기의 타입으로 저장될 때 
   - Double star = 4.3f
2. 작은 크기의 타입이 큰 크기의 타입과 계산될 때 
   - 5 / 4.3f

좋았던 점

JVM에 대한 설명을 그림을 통해서 설명해 줘 이해가 잘 되었다. JRE와 JDK를 비교한 것이 도움이 되었다. 변수에 대한 설명과 형변환을 적절한 예시를 들어주었다.