Java

[ Java ] 기본형 타입

Leo724 2023. 4. 10. 00:32

자바에서는 모든 변수에 타입을 정의하고 있으며, 변수가 가지는 타입에 따라 담을 수 있는 값의 종류가 달라지게 된다.

기본형 타입

의 개수는 총 8 개로 구분된다.

크게는 논리형, 문자형 , 정수형, 실수형으로 구분할 수 있다.

분류에 따른 크기  1byte 2byte 4byte 8byte
논리형 boolean      
문자형   char    
정수형 byte short int long
실수형     float double

기본형 타입은 메모리를 확보하고, 그 메모리에 값을 저장합니다.

기본형은 타입은 첫 문자가 소문자로 시작한다.

 

메모리로 표현한 int i = 1;

1byte는 8bit로 구성되고, 4byte 메모리에 숫자 1이 이진수 형태로 저장된다.

변수를 선언한 후 초기화 해주지 않으면 0으로 초기화된다.

1byte 2byte 3byte 4byte
0000 0000 0000 0000 0000 0000 0000 0001

1byte 즉 8비트는

 부호비트 0/1  0/1 0/1 0/1 0/1 0/1 0/1

맨 앞의자리는 부호비트의 자리로, 0이면 양수 1이면 음수를 갖는다.

1byte로 표현할 수 있는 가장 큰 수는 다음과 같다.

0 1 1 1 1 1 1 1

맨 앞의 0은 양수이므로, 2^0 + 2^1 + 2^2 + 2^3 + 2^4 + 2^5+2^6 => 127이다.

 

 

양수 1을 

0 0 0 0 0 0 0 1

 

보수로 표현하여 음수 1로 표현하기

0은 1로, 1을 0으로

1 1 1 1 1 1 1 0

보수로 바꾼 후 + 1을 해준다.

0 0 0 0 0 0 0 1

둘의 비트를 더한다.

1 1 1 1 1 1 1 1

결과적으로 다음과 같이 1을 2의 표현한 것이 -1이 된다.

 

기본형이 아닌 타입 즉, 참조형(레퍼런스타입)은 첫 문자가 대문자로 시작하고 값을 참조한다.

앞으로 배울 class, interface는 모두 기본형 타입이 아니다.

 

 


인프런의 '즐거운 자바' 강의 내용을 토대로 작성하였음.