본문 바로가기

java

몇 가지 자바 원시 타입의 이름을 지정하고 이 타입이 JVM에서 어떻게 처리되는지 설명

 - boolean, int, double 같은 각각의 기본 타입은 원시(primitive)타입이라고 알려져 있다.

 - JVM에서 객체와 다른 방식으로 다룬다. 왜냐하면 원시 타입은 NULL이 될 수 없기 때문

 - int와 long floaf와 double을 구분할수 있어야 한다. long은 L float는 F, double은 D 로 정의 한다.

 

원시 타입의 종류와 크기

 

타입 

 크기

boolean 

 1

short

 16

 int

 32

 long

 64

 float

 32

 double

 64

 char

 16

 

 

 - char 타입이 unsighed 이고 char 값의 범위는 유니코드 값이므로 0에서 65,535 까지다.

 - 원시 타입을 정의할 때 값이 할당되지 않았다면 그 변수는 기본적으로 기본값이 지정된다.

 

상위 개념 타입으로 암시적으로 타입 변환하기

int value = Integer.MAX_VALUE;

long biggerValue = value + 1;

 

char 타입을 제외하면 컴파일러는 해당 값을 저장하기 위해 상위 타입을 자동으로 사용할 수 있다.

 

하위 타입으로 명시적으로 타입 변환

long veryLageNumber = Long.MAX_VALUE;

int from LargeNumber = (int) veryLargeNumber;

 

  - 하위 타입으로 변환하려면 타입을 명시해서 변환해야 한다.

 - 하위 타입으로 자주 변환한다는것은 적합한 타입을 사용하지 않는것을 뜻한다.

 

'java' 카테고리의 다른 글

자바에서 객체란 무엇인가?  (0) 2017.11.15
왜 Integer.MIN_VALUES에 대응하는 양수가 없는가?  (0) 2017.11.15
빌더 패턴은 얼마나 유용한가?  (0) 2017.11.15
Map  (0) 2017.11.15
이진 탐색 트리  (0) 2017.11.15