구멍가게 IT 공부방
변수와 상수 본문
자바(Java)에서 변수와 상수는 프로그램 내 데이터를 저장하고 사용하는 데 필수적인 개념입니다.
아래에 변수와 상수의 특징을 명확하게 비교하여 정리했습니다.
✅ 변수(Variable)
항목 | 설명 |
정의 | 데이터를 저장하기 위한 메모리 공간의 이름. 값이 변할 수 있음. |
선언 방법 | 자료형 변수명; 또는 자료형 변수명 = 값; |
값 변경 | 가능. 실행 중 언제든지 다른 값으로 변경할 수 있음. |
사용 예시 | int age = 25;age = 30; |
종류 | - 지역 변수- 인스턴스 변수- 클래스 변수 (static 변수) |
자료형 | 기본형(정수, 실수, 문자, 논리)과 참조형(객체 등) 모두 사용 가능 |
메모리 위치 | 선언 위치에 따라 스택, 힙, 메서드 영역 등 |
✅ 상수(Constant)
항목 | 설명 |
정의 | 한 번 값을 저장하면 변경할 수 없는 변수 |
선언 방법 | final 자료형 상수명 = 값; |
값 변경 | 불가능. 재할당 시 컴파일 오류 발생 |
사용 예시 | final double PI = 3.14159; |
명명 규칙 | 관례적으로 대문자 사용, 단어 사이는 _로 구분예: MAX_SPEED |
장점 | - 값이 변경되지 않아 안정성 확보- 코드의 의미 전달에 도움 |
활용 예 | 수학 상수, 프로그램 내 고정된 값(최대값, 최소값 등) |
✅ 변수 vs 상수 비교 요약
항목 | 변수 | 상수 (final) |
값 변경 | 가능 | 불가능 |
키워드 | 없음 | final 사용 |
용도 | 변화하는 값 저장 | 고정된 값 저장 |
명명 관례 | 소문자/카멜케이스 | 대문자+언더스코어 |
💡 변수와 상수 예제 코드 (Java)
public class VariableConstantExample {
// 클래스 상수 선언 - 대문자 + 언더스코어 관례
static final double PI = 3.14159;
public static void main(String[] args) {
// 🔸 변수 선언 및 사용
int age = 25; // 나이를 나타내는 변수 선언
System.out.println("초기 나이: " + age);
age = 30; // 변수의 값 변경 가능
System.out.println("변경된 나이: " + age);
// 🔸 상수 사용
System.out.println("원주율 PI: " + PI);
// PI = 3.14; ❌ 오류! final로 선언된 상수는 값 변경 불가
// 🔸 지역 상수 선언
final int MAX_SPEED = 120; // 지역 상수 (메서드 안에 선언)
System.out.println("최대 속도: " + MAX_SPEED);
// MAX_SPEED = 100; ❌ 오류! 상수는 다시 대입할 수 없음
}
}
🔍 코드 설명 요약
구문 | 설명 |
int age = 25; | 변수 age 선언 후 25 저장. 이후 값 변경 가능. |
final double PI = 3.14159; | 상수 PI 선언. 변경 불가능. |
static final | 클래스 전체에서 접근 가능한 상수. 일반적으로 상수는 이렇게 선언. |
MAX_SPEED | 지역 상수로, 대문자와 _를 사용하는 명명 관례를 따름. |
'Programming > Java' 카테고리의 다른 글
Java - 객체 지향 프로그래밍 (OOP) (0) | 2020.07.02 |
---|---|
Java - 자바 란? (0) | 2020.06.24 |
Comments