반응형
https://velog.io/@gillog/원시타입-참조타입Primitive-Type-Reference-Type
원시 타입은 쉽게 말해, 정수, 실수, 문자, 논리 리터럴등의 실제 데이터 값을 저장하는 타입이고,
참조 타입은 객체(Object)의 번지를 참조(주소를 저장)하는 타입으로 메모리 번지 값을 통해 객체를 참조하는 타입이다.
원시타입 (primitive type)
점프투자바 03장 자료형에서 정리한 내용에서 나오는 자료형이다. int, long, float, double, boolean... 등등
참조타입 (reference type)
원시타입을 제외한 타입들 (문자열, 배열, 클래스, 인터페이스 등)이 해당된다.
각 타입명은 대문자로 시작하고, Integer같이 풀네임으로 사용한다.
- 둘의 차이점?
가장 큰 차이점은 원시타입은 메모리에 실제 '값'을 을 저장하고, 참조타입은 '주소'를 저장한다.
기본 데이터 타입은 스택 영역에 생성이 되고 참조 데이터 타입은 힙 영역에 생성이 된다.
또, 참조타입은 null의 사용이 가능하며, 제네릭 타입에서 사용 가능하다.
사용하는 메모리양에서 참조타입이 원시타입보다 압도적으로 높다.
원시타입이 사용하는 메모리 | 참조타입이 사용하는 메모리 |
boolean - 1bit | Boolean – 128 bits |
byte - 8bits | Byte - 128bits |
short, cagr - 16bits | Short, Charater - 128bits |
int, float - 32bits | Integer, Float - 128bits |
long, double - 64bits | Long, Double - 196bits |
메모리 사용 영역
https://kingpodo.tistory.com/54
- 메소드 영역
- 힙 영역 (heap area)
객체와 배열이 생성되는 영역.
힙 영역에 생성된 객체와 배열은 스택 영역의 변수나 다른 객체의 필드에서 참조한다. 참조하는 변수나 필드가 없다면 의미 없는 객체가 되기 때문에 이것을 쓰레기로 취급하고 JVM은 Garbage Collector를 실행시켜 스레기 객체를 힙 영역에서 자동으로 제거한다.
- JVM(Java Virtual Machine) 스택 영역 (stack area)
반응형
'Study > JAVA' 카테고리의 다른 글
[JAVA] 정보의 은닉화(캡슐화), Getter와 setter (0) | 2021.11.10 |
---|---|
[JAVA] 클래스의 구성 멤버 (0) | 2021.11.10 |
[점프투자바] 07 자바 날개달기 07-1 ~ 3 (0) | 2021.11.07 |
[JAVA] 숫자와 문자열 간의 형 변환 (0) | 2021.11.05 |
[점프투자바] 05 객체지향 프로그래밍 05-6 인터페이스 (0) | 2021.11.03 |