Java Data Type

Hyun Jin Kim·2021년 7월 20일
0

Java

목록 보기
1/7

Java Data Type

#1 Primitive Type의 종류와 값의 범위

1-1 종류(기본값)

  • byte(0), short(0), int(0), long(0), float(0.0), double(0.0), boolean(false), char

  • int
    - 저장공간(memory) : 4byte
    - 범위 : 2^-31 ~ 2^31 -1
    - 기본값 : 0
    - method에서 int를 정의할 때는 꼭 값을 할당해야한다(초기화)

// 4byte의 메모리를 사용하여 3이라는 값을 저장
int a = 3;

#2 Primitive Type & Reference Type

2-1 Primitive Type 개념

  • 메모리 Stack 영역에 값이 저장된다
  • 기본값이 지정되어있어, null을 저장할 수 없다.

2-2 Reference Type 개념

  • 값이 아닌 주소가 heap영역에 저장된다
  • null을 다룰 수 있다.
  • 참조형 타입은 객체가 위치한 메모리 주소를 저장함으로써 객체를 가리킨다

#3 Literal

3-1 Literal 개념

  • 어떤 변수에 의해 저장되는 값 -> 값 자체로서 변화하지 않는 것
  • 변수나 상수에 저장되는 값 자체

3-2 Literal 종류

  • 정수 리터럴, 실수 리터럴, 문자 리터럴, boolean 리터럴, 문자열 리터럴

Literal Examples

int a = 10; // literal : 10

#3 변수 선언 및 초기화

#3-1 변수의 선언

  • 변수의 선언은 곧 저장공간을 확보하는 것을 말한다.

#3-2 변수의 초기화

  • 저장공간에 원하는 값을 저장하는 것

#4 변수의 Scope & Life time

#4-1 변수의 Scope

  • 변수를 사용할 수 있는 영역의 범위

#4-2 변수의 Life time

  • 변수가 메모리 안에서 언제까지 살아있는지에 관한 것

#4-3 Instance Variables

  • Class 안에서 선언 되는 변수로써, 메서드 또는 블럭안에서 선언되는 변수와는 다르다.
  • Scope
    - static method를 제외한 class 전체
  • Life time
    - Class를 인스턴스화한 객체가 Memory에서 사라질 때까지

#4-4 Class Variables(static variables)

  • Class 안에서 선언되는 변수로써, static 키워드가 포함되어 선언된다
  • static 키워드가 붙은 필드 변수 -> 전역적으로 접근 가능
  • Instance 생성 전에 미리 로드되어 생성된다
    - Heap 영역에서 관리된다.
  • Scope
    - Class 전체
  • Life time
    - 프로그램 종료시

#4-5 Local Variables

  • Instance Variables, 및 Class Variables를 제외한 모든 변수
  • Scope
    - 변수가 선언된 블럭의 내부
  • Life time
    - 컨트롤이 변수가 선언된 블럭 내부에 있는 동안

#5 타입의 변환, Casting, Type Promotion

#5-1 Type Casting

  • 크기가 더 큰 자료형을 더 작은 자료형에 대입하는 것
    - 데이터의 손실이나 변형이 올 수 있다.
  • 자식클래스 -> 부모클래스
  • 명시적으로 표시해야 된다
int i = 10;
long j = (long)i

#5-2 Type Promotion

  • 크기가 더 작은 자료형을 더 큰 자료형에 대입하는 것
    - 데이터의 손실이나 변형이 없다
  • Type Casting과 다르게 명시적으로 표현할 필요가 없다
  • 부모클래스 -> 자식클래스
profile
우아하고 싶어서 만든 블로그

0개의 댓글