구멍가게 IT 공부방

변수와 상수 본문

Programming/Java

변수와 상수

방구석코딩 2025. 4. 5. 00:51

자바(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