본문 바로가기
study_java/자바 공부하기

변수의 자료형 구분(기본자료형 / 비기본자료형)

by developer_j 2023. 3. 30.
728x90
반응형

- 기본 자료형 (=원시타입, Primitive Type)

: 논리형(boolean) / 문자형(char) / 숫자형(정수형-byte, short, int, long, 실수형-float, double)이 있다. 숫자형 long과 실수형 float 형은 각각 변수값 뒤에 ‘L’, ‘l’ 또는 ‘F’, ‘f’를 붙인다. (구분을 위함)

 

- 비기본 자료형 (=참조타입, Reference Type, Non-Primitive Type)

: 클래스(String, Integer, Long 등) / 인터페이스(Collection, Map 등) / 배열 이 있다. 참조 자료형으로도 불림. new 키워드를 이용하여 생성하며 모든 참조변수의 기본값은 null 이다.

 

+)

- Long과 long의 차이, Integer와 int의 차이

long은 기본자료형, Long은 비기본자료형으로

long tmp1 = null; -> 오류 발생
Long tmp2 = null; -> 오류 발생하지 않음

박싱과 언박싱을 찾아보면 더 좋은 설명을 볼 수 있다.

 

- String 은 Java String Pool을 사용한다

같은 내용의 문자열을 선언할 경우, 메모리에 탐색 후에 같은 문자열이 없다면 새로운 공간에 저장한다.

디버깅모드로 확인 했을 때 str1 변수의 id값은 23, str2 변수의 id값도 23이다.

str1에 기존 문자열과 다른 문자열을 대입했을 때(line 8), str1 변수의 id 값이 23에서 31로 변경되는 것을 확인할 수 있다.

 

728x90
반응형