Java Data Type 정리

VANS·2022년 1월 15일
0

스터디

목록 보기
7/15

22.01.15(토)

이번주 월요일에 학습하다가 정리가 필요하다고 생각한 Data Type을 정리하고자 한다.


Java Data Type

  • 자바 자료형에는 크게 기초형(Primitive type) 참조형(Reference type)으로 나뉘고, 세부적으로는 하기 그림과 같이 나뉜다.
Primitive Type // 기초형Boolean Type(boolean) // 논리형 Integer Type(short, int, long) // 정수형Floating Point Type(float, double) // 실수형Character Type(char) // 문자형
        
 Reference Type // 참조형Class Type // 클래스형Interface Type // 인터페이스형Array Type // 배열형Enum Type // 열거형
    ㄴ etc.

A. Primitive Type(기초형)

  • 기초형은 하기와 같은 특징을 갖는다.
    1. 해당 데이터가 메모리에 어떻게 저장되고, 프로그램에서 어떻게 처리되어야 하는지를 명시적으로 알려주는 역할을 함.
    2. 기초형은 자바에서 사용하기 전에 반드시 선언 Declared 되어야 함.
    3. OS별로 자료형의 길이가 변하지 않고 동일함.
    4. 비객체 타입으로, null값을 가질 수 없다.

1. 논리형(boolean/1bit)

  • 조건식과 논리 연산 수행에 쓰이며, 값으로 참(true)과 거짓(false)을 나타내는데 사용된다.

2. 정수형(byte/8bits, short/16bits, int/32bits, long/64bits)

자료형크기(byte)최솟값최대값
byte1byte-128127
short2byte-32,76832,767
int4byte-2,147,483,6482,147,483,647
long8byte-9,223,372,036,854,775,8089,223,372,036,854,775,807
  • 정수형은 4가지 타입이 있고, 각 타입별로 정수를 저장하는데 사용됨.
  • 주로 int를 사용하며, byte는 이진데이터를 다룰 때 사용됨.
  • short는 C언어와의 호환을 위해 추가되었다고 함.
    정수를 저장하는데 사용되며 주로 int를 사용한다. byte는 이진 데이터를 다룰때 사용되며, short는 C언어와의 호환을 위해서 추가되었다고 함.
  • 보통 int를 자주 쓰지만, 메모리 효율을 높이기 위해 크기가 작은 byteshort를 쓰기도 함.

3. 실수형(float/32bits, double/64bits)

자료형크기(byte)최솟값최대값정밀도
float4byte1.4E-453.4E387자리
double8byte4.9E-3241.8E30815자리
  • 컴퓨터에서 실수를 표현하는 방식은 오차가 발생할 수 밖에 없는 태생적인 한계를 지님.
  • 따라서 정밀도가 중요함. (정밀도 7이란것은 7자리의 10진수가 표현 가능하다는 의미이다.)
  • 만약 8자리 이상으로 실수를 표현하고자 한다면 주로 쓰는 double을 활용하여야 함.

4. 문자형(char/16bits)

  • 변수에 문자열이 아닌 하나의 문자만 저장할 수 있음.
    (문자열 저장을 위해서는 객체형 String을 써야한다.)
  • 자바에서는 Unicode를 지원하기 때문에 문자 하나가 16비트로 표현됨.(규격은 UTF-16을 사용함.)

B. Reference Type(참조형)

  • 참조형은 하기와 같은 특징을 갖는다.
    1. 기초형은 변수에 변수의 값이 저장되어 있으나, 참조형의 변수에는 변수의 값이 아닌 객체의 위치(참조 또는 주소)가 들어가있다.
    2. 기초형을 제외하면 참조형이라 봐도 무방.
    3. 메모리 저장 영역 측면에서 보면, 기초형은 Stack영역에 실제 값들이 저장되는것이고 참조형은 실제 인스턴스는 힙영역에 생성되었고, 그 영역의 주소를 스택영역에서 저장하고 있다고 보면됨

참고

profile
코딩도 점진적 과부화

0개의 댓글