자바의 정석[기초편]으로 공부한 내용을 정리한 글입니다.
변수란?
변수는 프로그램에서 값을 저장해두는 공간입니다.
쉽게 말하면, 값을 담을 수 있는 상자입니다.
int year = 2014;
- 여기서 year가 변수입니다.
- 2014는 그 안에 들어간 값입니다.
즉, 변수는 이름을 가진 공간이고, 그 안에는 값을 바꿔가며 넣을 수 있습니다.
변수는 “변할 수 있는 값을 담는 상자”입니다.
상수란?
상수는 변수처럼 값을 저장하지만, 한 번만 저장할 수 있는 공간입니다.
값을 한 번 저장하면 절대 바꿀 수 없습니다.
선언 방법
final int MAX_VALUE = 100;
- final이 붙었기 때문에, 이건 상수입니다.
- MAX_VALUE는 상수 이름
- 100은 저장된 값
만약 아래와 같이 바꾸려고 하면?
MAX_VALUE = 200; // ❌ 오류 발생
→ 컴파일 에러가 납니다. 상수는 절대 바꿀 수 없습니다!
상수 이름 규칙
- 모두 대문자로 쓰는 것이 관례
- 여러 단어는 밑줄 _로 연결
예시:
PI, MAX_HEIGHT, USER_NAME
리터럴(literal)이란?
리터럴은 그 자체로 값을 의미하는 것입니다.
예를 들어:
int x = 10;
- x는 변수
- 10은 리터럴 (값 그 자체)
final int MAX = 100;
- MAX는 상수
- 100은 리터럴 (변하지 않는 값 자체)
정리
변수 | 값을 저장하는 공간, 나중에 변경 가능 |
상수 | 값을 한 번만 저장 가능한 공간 (final 사용) |
리터럴 | 코드 안에 적힌 고정된 값 자체 (예: 10, 3.14, 'A') |
문자 리터럴 vs 문자열 리터럴
문자 리터럴
- 작은 따옴표 ' ' 안에 문자 하나만
- 예: 'A', '1', '가'
char ch = 'A'; // 문자 하나 저장
char는 문자 하나만 저장 가능!
문자열 리터럴
- 큰 따옴표 " 안에 문자 여러 개
- 예: "Hello", "123", "가나다"
String msg = "Hello"; // 문자열 저장
String은 문자열, 즉 문자 여러 개를 저장하는 자료형입니다.
빈 문자열과 문자의 차이
"" | 빈 문자열 (문자열인데 아무 글자 없음) → 허용됨 |
'' | ❌ 오류! → 반드시 한 글자 있어야 함 (예: 'A') |
String은 클래스지만 특별 대우 받는다
String은 사실 클래스이기 때문에 객체 생성 문법을 쓰는 게 원칙입니다.
String name = new String("Java"); // 원래 이렇게 써야 맞음
하지만 자바는 특별히 String에 대해서는 아래처럼 간단히 쓸 수 있게 허용합니다:
String name = "Java"; // 간편한 축약 문법
그래서 대부분은 이렇게 간단히 씁니다.
'Java' 카테고리의 다른 글
임의의 정수 만들기 (0) | 2025.06.17 |
---|---|
문자열의 비교 (0) | 2025.06.17 |
타입 간의 변환방법 (0) | 2025.06.17 |
화면으로부터 입력받기 (0) | 2025.06.17 |
기본형과 참조형 (0) | 2025.06.17 |