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는 모두 기본형 타입이 아니다.
인프런의 '즐거운 자바' 강의 내용을 토대로 작성하였음.