첫번째 게시글인 형변환에서 int형변환 시 타입의 허용 범위에 따라 값이 달라진 다는 것을 알았다.

그래서 이번 게시글에는 자료형에 대해서 정리할 것이다.

(전공자면 이미 학교에서 배웠겠지만 비전공자인 나는 곧 서른이 되는 이 나이에 지금 배우는게 슬프다… ㅠㅠ)




일단 JAVA의 자료형은 크게 기본형(Primitive type)과 참조형(reference type)으로 나뉜다.

1. 기본 자료형(Primitive type)

분류 이름 바이트 수 데이터의 표현 범위
정수형 byte 1 -127 ~ +128
  short 2 -32,768 ~ + 32,767
  int 4 -2,147,483,648 ~ +2,147,483,647
  long 8 -9,223,372,036,854,775,808 ~ +9,223,372,036,854,775,807
실수형 float 4 단정도 실수형 (유효 자리는 7 정도임)
  double 8 배정도 실수형 (유효 자리는 15정도)
문자형 char 2 0 ~ 65,535(유니코드 문자열)
논리형 boolean 1 true, false
  • 기본 자료형은 default 값이 존재하기 때문에 null이 없다.
  • 실제 값을 저장하는 공간인 스택(Stack) 메모리에 저장된다.
  • 데이터의 표현 범위를 벗어난 값을 넣으면 컴파일 에러가 발생한다.

2. 참조형 타입(Reference type)

  • 기본형 타입을 제외한 모든 타입들
  • Null이 존재한다
  • 값이 저장된 주소값을 저장하는 힙(Heap) 메모리에 저장된다.
  • NullPointException이 발생할 수 있다. 조심하라.
  • 참조형 타입 예시
    • 배열(array[])
    • 열거(enum)
    • 클래스(class)
    • 인터페이스(interface)

Comments