Search

상수 & 리터럴

상수(constant)

값을 저장 가능한 공간이지만, 변수와 달리 한번 저장 후 다른 값으로 변경 불가능
상수 선언법 : final 상수타입 상수이름;
final int MAX_SPEED = 20; // 상수 MAX_SPEED 선언과 값을 20으로 초기화 final int MIN_SPEED; // 에러. 선언과 동시에 초기화 필요 final int MAX_VALUE = 1000; MAX_VALUE = 2000; // 에러. 상수는 값 변경 불가
Java
상수 명명 규칙
1. 이름은 모두 대문자로 2. 여러 단어인 경우 _로 구분

리터럴(literal)

37, 222, 2.65 'B' 같이 프로그래밍에서 우리가 기존에 알고 있던 상수를 표현하기 위한 용어
// 변수: age / 상수: MAX_SPEED / 리터럴: 26, 200 int age = 26; final int MAX_SPEED = 200;
Java
변수(variable) 하나의 값을 저장하기 위한 공간 상수(constant) 값을 한번만 저장할 수 있는 공간 리터럴(literal) 그 자체로 값을 의미하는 것

상수 개념이 등장한 이유?

기존의 리터럴 개념에서 추가적으로 상수가 등장한 이유가 뭘까?
// 리터럴을 직접 사용 int triangleArea = (30 * 20) / 2; // 삼각형 면적 구하기 int rectangleArea = 30 * 20; // 사각형 면적 구하기 // 상수 사용 final int WIDTH = 30; // 폭 final int HEIGHT = 20; // 높이 int triangleArea = (WIDTH * HEIGHT) / 2; // 삼각각형 면적을 구하는 공식 int rectangleArea = WIDTH * HEIGHT; // 사각형 면적을 구하는 공식
Java
→ 코드의 의미가 더 명확히 파악 가능해졌고, 상수만 다시 초기화하면 다회 활용이 가능하다.

참고 자료