Notice
Recent Posts
Recent Comments
개발일지
[JAVA] 참조 타입 reference type 본문
자바의 데이터 타입에는 크게 원시타입(primitive type), 참조타입(reference type)이 있다.
오늘 이야기 해볼건 참조타입!!
원시타입 간단하게 얘기하고 넘어가자면, 원시타입은 byte, char, short, int, long, float, double, boolean.. 을 이용해서 선언해 실제값을 변수 안에 저장한다.
int a = 5;
double b = 100.5;
참조 타입은 배열, 열거, 클래스, 인터페이스를 이용해 선언된 변수고 메모리의 번지를 값으로 갖는다. 번지틑 통해 참조한다는 뜻에서 참조타입이라고 부른다.
String c = "kang";
String d = "kangkang";
자바의 변수는 스택영역에 생성되고 객체는 힙 영역에 생성된다.
위에 선언된 변수 a,b 는 직접 값을 저장하고 있지만 String 클래스 변수인 c, d 는 힙 영역의 String 객체 주소 값을 가지고 있다. 주소를 통해 객체를 참조한다는 뜻에서 String 클래스 변수를 참조 타입 변수라고 한다.
여기서 힙 Heap 영역에 대해 알아보자면,
힙 영역은 객체와 배열이 생성되는 영역이다. 힙 영역에 객체와 배열은 JVM 스택 영역의 변수나 다른 객체의 필드에서 참조한다.
참조하는 변수나 필드가 없다면 의미없는 객체가 되기때문에 이것을 쓰레기로 취급하고 GC를 실행시켜 쓰레기 객체를 힙 영역에서 자동으로 제거한다.
'JAVA' 카테고리의 다른 글
[이것이 자바다] 정적 멤버와 static (0) | 2022.12.05 |
---|---|
코틀린[Kotlin], 정말 자바[JAVA]와 100% 호환되나? (0) | 2022.11.04 |
[JAVA] 자바 가상 기계 JVM (0) | 2021.12.14 |
[JAVA] StringBuilder (0) | 2021.12.07 |
JAVA 언어 특징 (0) | 2021.11.22 |