JRE (Java Runtime Environment) : 자바 실행 환경 → .class 파일만 실행 가능
JDK (Java Development Kit) : 자바 개발 키트 → .java파일을 .class 파일로 변환해주는 Compiler(javac), 코드디버깅하는 jdb 등의 기능 있음
[2. 변수]
1. 기본형 변수
- (논리형)boolean, (문자형)char('')
- (정수형)byte,short,int,long
int와 long 데이터값(리터럴) 구분 위해 long 숫자 뒤에 접미사 L을 붙임
- (실수형)float,double
float과 double 데이터값(리터럴) 구분 위해 float 숫자 뒤에 접미사 f를 붙임
float은 "부동 소수점 방식"을 사용하므로 long보다 더 넓은 범위 표현 가능
부동 소수점 방식 : 가수와 지수를 구분하여 저장하고 이 값들을 곱한 값을 저장하는 방식
2. 참조형 변수
- String("", 문장 끝에 \0 저장), Object, Array, List
- 실제 값이 아닌 원본 값의 주소값 저장
Stack 영역 : "정적"으로 할당된 메모리 영역 (크기가 정해져 있는 기본형 변수 & 참조형 변수의 주소값 저장)
Heap 영역 : "동적"으로 할당된 메모리 영역 (크기가 계속 늘어날 수 있는 참조형 변수의 원본 저장)
3. Wrapper 클래스 변수
- 모든 기본형에 대한 래퍼 클래스 존재 (첫글자를 대문자로) - 클래스로 변수 관리 시 객체지향의 많은 기능 사용가능
// 박싱 : 기본타입에서 래퍼클래스변수로 변수를 감싸는 것
// Integer 래퍼 클래스 num 에 21 의 값을 저장
int number = 21;
Integer num = new Integer(number);
// 언박싱 : 래퍼클래스변수를 기본타입변수로 가져오는 것
int n = num.intValue(); // 래퍼 클래스들은 inValue() 같은 언박싱 메서드들을 제공해줍니다.
입력과 출력
Scanner sc = new Scanner(System.in); //Scanner객체를 new명령어로 생성
String input = sc.next(); //sc(Scanner)의 .next 실행시 input변수에 입력한 글자 받을 수 있음
System.out.println("입력값 : " + input); // 입력한 글자를 출력합니다.