[Java] 자료형

YounDitt·2020년 9월 20일
0

1. 기본자료형(Primitive Data Type)

  • 정수,실수,문자,논리 리터럴을 저장하는 타입
  • 변수에 실제 값을 저장한다.
  • 스택 영역에 생성된다.
  • 소문자로 시작한다.
  • 크기가 정해져 있다.

1) 정수타입

  • 10진수(기본값), 8진수(0을 붙여서 시작), 16진수(0x로 시작)
  • 종류 : byte, short, int, long

2) 실수타입

  • 소수 및 지수식
  • 종류 : float, double

3) 문자타입

  • '로 묶어서 사용하는 텍스트, 역슬래시()가 붙은 문자
  • 종류 : char

4) 논리타입

  • 참과 거짓에 대한 내용
  • 종류 : boolean

타입변환(Type Casting)

자바에서는 묵시적으로 데이터 타입이 맞지 않으면 자동으로 변환해준다.

  • 자동타입변환(promotion) : 큰 크기 타입 <- 작은 크기 타입(메모리 크기)
  • byte(1) < short(2) < int(4) < long(8) < float(4) < double(8)

    float과 double은 메모리 크기는 같지만 정수타입과는 다른 저장방식 때문에 훨씬 더 큰 범위의 값을 저장할 수 있다.

  • 음수 저장이 안되므로 byte타입은 자동변환 안됨.

2. 참조 자료형(Reference Data Type)

  • 객체의 주소를 참조하는 타입
  • 변수에 메모리 주소를 저장한다.
  • 힙 영영에 생성된다.
  • 대문자로 시작한다.

    why?

    객체는 변수에 직접 담기에 크기가 클 수 있고, 또한 유동적이다.

종류

  • String, 배열, 열거(Enum), 클래스, 인터페이스

    String

    리터럴로 선언되었을때, 스택영역에 String객체의 값이 동일하면 힙 영역에 있는 객체를 공유한다.

참고 1
참고 2

profile
Hello, Android

0개의 댓글