기본형 변수
종류 : (1) 논리형 변수 (boolean), (2) 문자형 변수 (char), (3) 정수형 변수 (byte, short, int, long)
byte byteNumber = 127; // byte 는 -128 ~ 127 범위의 숫자만 저장 가능합니다.
short shortNumber = 32767; // short 는 -32,768~32,767 범위의 숫자만 저장 가능합니다.
int intNumber = 2147483647; // int 는 -21억~21억 범위의 숫자만 저장 가능합니다.
long longNumber = 2147483647L; // long 은 숫자뒤에 알파벳 L 을 붙여서 표기하며 매우 큰수를 저장 가능합니다.
float floatNumber = 0.123f; // float 는 4byte 로 3.4 * 10^38 범위를 표현하는 실수값
double doubleNumber = 0.123123123; // double 은 8byte 로 1.7 * 10^308 범위를 표현하는 실수값
참조형 변수
참조형 변수는 어느 공간에 특정 주소값에 저장된 변수를 말한다. (주소형 변수라고 부르기도 함)
참조형 변수는 실제 값이 아닌 원본값의 주소값을 저장
(1) 문자열 변수 와 (2) 기타로 분류 할 수 있다.
1. 문자열 변수 : String
2. 그외 : Object, Array, List...
- 객체, 배열, 리스트와 같은 단일 저장공간에 담을 수 없는 값을 저장함
저장 관점에서 변수
- 기본형 변수 : 원본값이 Stack 영역에 있습니다.
- 참조형 변수 : 원본값이 Heap 영역에 있습니다.
- Stack 영역에는 따로 저장 해둔 원본값의 Heap 영역주소를 저장합니다.
더보기
📌 Stack 영역 vs Heap 영역
- Stack의 경우에는 정적으로 할당된 메모리 영역입니다.
- 그래서, 크기가 몇 byte 인지 정해져있는 기본형 변수를 저장합니다.
- 추가로, 크기가 정해져있는 참조형 변수의 주소값도 저장합니다.
- Heap의 경우에는 동적으로 할당된 메모리 영역입니다.
- 그래서, 크기가 계속 늘어날 수 있는 참조형 변수의 원본을 저장합니다. </aside>
래퍼 클래스 변수
기본형 변수를 클래스로 한번 감싸는 변수
- 래퍼 클래스를 사용하는 이유?!
- 래퍼 클래스로 변수를 관리하면 객체지향의 많은 기능을 사용 할 수 있음
// 박싱 VS 언박싱
// 박싱
// Integer 래퍼 클래스 num 에 21 의 값을 저장
int number = 21;
Integer num = number; //boxing
// 언박싱
int n = num.intValue(); // 래퍼 클래스들은 inValue() 같은 언박싱 메서드들을 제공해줍니다.
ㅇㄹ
'Java' 카테고리의 다른 글
비트연산자, 연산자 우선순위 (0) | 2023.04.03 |
---|---|
삼항 연산자 (0) | 2023.04.03 |
Java 언어의 특징 그리고 실행환경 (0) | 2023.04.03 |
빌드, 자바 빌드 관리 Tool (0) | 2023.03.04 |
가비지 컬렉션 (Garbage Collection) (0) | 2023.03.04 |