| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
- CodeCommit
- 백엔드 강의
- 자료구조강의추천
- 문돌이
- 오류제어
- 백엔드 코딩
- 코딩독학방법
- Android
- C포인터
- 정규식
- 코드라떼
- 안드로이드
- 개발자
- java8
- 데이터베이스강의
- 코딩입문
- Stream
- 스타트업
- 람다
- 자바자료구조
- 스트림
- 백엔드 개발 코딩 강의
- RFC
- 자바8
- 데이터베이스기초
- lamda
- 자바
- java
- CodeLatte
- thread
- Today
- Total
이병록의 개발 블로그
자바 프로그래밍 - [심화] 변수 본문
목차
- [1byte의 크기는 얼마나 클까?]
- [메모리에는 주소가 존재한다.]
- [변수에도 메모리 주소가 존재한다.]
- [값이 존재하지 않는 변수는 메모리를 할당하지 않는다.]
- [아스키 코드표]
ㅤ
1. 1byte의 크기는 얼마나 클까?

1 byte를 알기 전에 가장 작은 단위인 bit에 대해서 알아봅시다.
1 bit는 2진수 표현되며 1 또는 0으로 표현될 수 있습니다.
옛날에는 7 bit나 9 bit도 1 byte라고 부를 때가 있었습니다만 현재는 일반적으론 8 bit를 1byte라 부릅니다.
1 byte의 범위는 2진수로 0000 0000부터 1111 1111까지 표현 가능하며, 이것을 정수로 표현하면 0000 0000은 십진수 0, 1111 1111은 십진수 255까지 표현할 수 있습니다.
ㅤ
2. 메모리에는 주소가 존재한다
땅에는 주소가 있듯이 메모리에도 논리적인 주소가 있습니다.
엄밀하진 않지만 그래픽적으로 메모리 공간을 보여줄 수 있다면 다음과 같습니다.
메모리 공간의 한 칸을 1 byte라고 했을 때 8 bit로 표현된다는 것을 대략적으로 확인할 수 있으며 해당 주소를 이용하여 메모리에 접근할 수 있습니다.
ㅤ
3. 변수에도 메모리 주소가 존재한다
변수를 선언하게 되면 변수를 위한 메모리가 할당됩니다.
이러한 변수에는 메모리 주소가 존재하며 변수를 접근하기 위해서는 메모리 주소를 알아야지 접근할 수 있습니다.
그러나 우리는 메모리 주소를 알지 못해도 변수에 접근할 수 있습니다.
자바 언어를 실행시키는 자바 가상 머신(Java Virtual Machine) 이 처리하기 때문입니다.
ㅤ
4. 값이 존재하지 않는 변수는 메모리를 할당하지 않는다
public class Main {
public static void main(String[] args) {
int num;
// 값이 존재하지 않는 변수.
// 이후에도 값이 존재 하지 않는 변수는
// 메모리에 할당하지 않는다
}
}
자바 가상 머신은 값이 존재하지 않는 변수는 메모리를 할당하지 않습니다. 이러한 변수들을 체크하여 메모리를 할당하지 않습니다. 이유는 사용하지 않기 때문입니다.
public class Main {
public static void main(String[] args) {
int num;
// 값이 존재하지 않는 변수에는
// 접근할 수 없다
System.out.println(num);
// 컴파일 오류 발생
}
}
그리고 값이 존재하지 않는 경우 변수에 접근할 수 없습니다.
자바 언어를 자바 가상머신이 읽을 수 있는 코드(자바 바이트 코드)로 바꾸는 컴파일이 되지 않습니다.
*이후에 배우는 멤버 변수는 값을 존재하지 않더라도 메모리에 적재도 하고 초기화도 해줍니다. 지금은 헷갈릴 테니 넘어갑시다.
ㅤ
5. 아스키 코드표

'자바 프로그래밍 강의' 카테고리의 다른 글
| 자바 프로그래밍 - 변수 (0) | 2026.01.27 |
|---|
