변수
변수는 값을 임시로 저장하기 위한 수단으로, 값을 박스나 공간에 담아둔다고 생각할 수 있다. 이렇게 담아둔 데이터는 나중에 필요할 때 꺼내어 사용할 수 있다.
메모리는 이러한 변수들이 담겨 있는 메모리 셀들의 집합체이다.
쉽게 말하면, 이미 사용한 값을 나중에 다시 사용해야 할 때 변수를 사용한다.
변수를 이용하면 값을 기억하고 필요할 때 빠르게 접근할 수 있어 프로그래밍을 더욱 효율적으로 할 수 있다. 이를 통해 코드의 재사용성을 높이고, 복잡한 로직을 간결하게 구현할 수 있다.
변수를 사용하기 위해선 변수를 선언하고 할당해야한다.
변수선언
변수를 선언한다는 것은 어떤 값을 저장할 메모리 공간을 확보하고, 해당 메모리 공간을 식별할 수 있는 이름을 붙이는 것을 의미한다.

int로 메모리 공간을 확보하고 (4byte) 그 공간이 num이라는 이름을 갖는것이다.
즉, 이제 num이라는 변수에 정수형의 숫자를 저장할 수 있게 되었다.
값 할당
선언 후 변수에 값을 할당해야한다.
할당하는 방법은 연산자 = 를 사용하면 된다.

예를 들어 아래와 같은 코드에서는

여기서 'int a'는 변수 선언 '= 1'은 값 할당이다.
따라서 2가 출력된다.
이처럼, 변수를 선언하고 나서 처음으로 값을 할당하는 것을 초기화라고 한다.
그리고, 초기화가 이루어진 후에 다시 다른 값을 할당하는 것을 재할당이라고 한다.
아래 예시처럼 num을 1로 초기화한 후, 2로 재할당하면 num에 저장되어 있던 1은 사라지고 2가 저장된다.

카멜 케이스
띄어쓰기를 표현할때는 대문자로 표시한다. (카멜케이스)
띄어쓰기를 표현할 때는, 띄어쓰지 않고 각 단어의 첫 글자를 대문자로 표시한다.
즉, 각 단어를 연결할 때 첫 번째 단어는 소문자로 시작하고, 그 이후의 단어들은 첫 글자를 대문자로 써서 단어를 구분한다.

자바 예약어 (Keyword)
자바에서 예약어는 이미 특별한 의미를 가지며, 변수명, 메서드명, 클래스명 등으로 사용할 수 없다. 예를 들어, int, true, false, class, public 등은 자바의 예약어다.
예약어의 예시:
- 자료형: int, float, char, boolean, double, byte, long
- 제어문: if, else, switch, case, for, while, do
- 접근제어자: public, private, protected
- 그 외 예약어: class, interface, static, final, abstract, extends, super, this

클래스명 규칙
- 자바에서 클래스명은 대문자로 시작하는 것이 일반적인 규칙이다.
- 클래스명은 대문자로 시작해야 하며, PascalCase로 작성하는 것이 관례이다.
클래스명, 변수명, 메서드명의 차이점:
- 클래스명: 대문자로 시작
- 변수명/메서드명: 소문자로 시작, CamelCase 방식