상수
항상 변하지 않는 값을 '상수(constant)'라고 한다.
자바에서는 final 예약어를 사용해 선언한다.
final double PI = 3.14;
final int MAX_NUM = 100;
상수 이름은 대문자를 사용, 단어 연결할 경우 언더바( _ )를 이용한다.
한번 선언한 상수는 변하지 않기 때문에 보통 선언과 동시에 값을 지정한다.
[실습] 상수 사용하기
package chapter2;
public class constant {
public static void main(String[] args) {
final int MAX_NUM = 100; //선언과 동시에 초기화
final int MIN_NUM;
MIN_NUM = 0; //초기화하지 않으면 오류 발생
System.out.println(MAX_NUM);
System.out.println(MIN_NUM);
}
}
상수를 사용하면 편리한 이유
프로그램 내부에서 반복적으로 사용하고 변하지 않아야 하는 값을 상수로 선언하여 사용하는 것이 좋다.
if(count == 30) { ... } //값이 30이라면 ...
while(i < 30) { ... } //30보다 작은 동안 ...
위처럼 값을 코드에 직접 사용했을 때 상수가 변경될 경우 프로그램에서 30을 쓴 부분을 모두 찾아서 고쳐야 한다.
final int MAX_NUM = 30;
if(count == MAX_NUM) { ... } //값이 MAX_NUM이라면 ...
while(i < 30) { ... } //MAX_NUM보다 작은 동안 ...
위처럼 상수로 선언해 사용한다면 상수를 선언한 부분의 값만 변경해 주면 된다.
리터럴
리터럴(literal)이란 프로그램에서 사용하는 모든 숫자, 문자, 논리 값(true, false)을 일컫는 말이다.
char ch = 'A';
int num = 10;
final double PI = 3.14;
위에서 사용한 'A', 10, 3.14와 같은 문자와 숫자를 '리터럴' 혹은 '리터럴 상수'라고 한다.
리터럴은 특정 메모리 공간인 상수 풀(constant pool)에 놓인다.
상수 값이 메모리 공간 어딘가에 존재해야 변수에 그 값을 복사할 수 있다.
숫자가 변수에 대입되는 과정은 일단 숫자 값이 어딘가 메모리에 쓰여 있고, 이 값이 다시 변수 메모리에 복사되는 것이다.
https://github.com/hyunjin1292/Java_study
GitHub - hyunjin1292/Java_study: java study book practice example
java study book practice example. Contribute to hyunjin1292/Java_study development by creating an account on GitHub.
github.com
※ 이지스퍼블리싱의 'Do it! 자바 프로그래밍 입문' 책을 보고 공부한 내용을 정리하고 있습니다.
'Language > Java' 카테고리의 다른 글
[Java] 기본 연산자 (0) | 2022.08.08 |
---|---|
[Java] 형 변환 (0) | 2022.07.22 |
[Java] 자료형 (0) | 2022.07.19 |
[Java] 변수란 무엇일까? (0) | 2022.07.15 |
[Java] 컴퓨터가 데이터를 표현하는 방법 (0) | 2022.07.14 |