개발 지식/Java

[Java] 변수(4) - 상수

devGSP 2022. 7. 11. 08:00
반응형
이 게시물은 아래 버전을 기준으로 작성되었습니다.

Java : 11.0.15.1
OS : Windows 10 Pro
IDE : Eclipse IDE for Enterprise Java and Web Developers - 2022-06

 

상수

 

상수와 리터럴

 

상수(constant)란 변하지 않는 값을 저장하는 공간이다. 즉, 변수처럼 값을 저장할 수 있는 공간이지만, 한번 값을 저장하면 다시 변경할 수 없다. 상수를 선언하는 방법은 변수의 타입 앞에 final 키워드를 붙여 주면 된다. JDK의 버전에 따라 다른데, JDK 1.6 이전 버전일 경우에는 반드시 선언과 동시에 초기화를 해 주어야 한다. JDK 1.6 버전부터는 사용하기 전에만 초기화를 하면 된다. 다만 선언과 동시에 초기화를 하는 습관을 들여 두 가지 상황에서 문제가 없도록 하는 것을 권장한다.

 

final [수의 타입] [상수의 이름] = [저장할 값];

 

또한, 암묵적인 규칙으로 상수의 이름은 대문자로 선언하며 어절의 구분은 언더바('_')를 사용한다. 아래 예시를 보자.

 

final String LANGUAGE = "JAVA";
final String JDK_VERSION = "1.6";

 

일상에서는 그 자체로 값을 의미하는 것을 상수라고 표현하는데, 프로그래밍에서는 상수를 위와 같이 정의한다. 프로그래밍에서는 그 자체로 값을 의미하는 것을 '리터럴(literal)'이라고 한다.

우리는 상수를 사용함으로써 이러한 리터럴에 의미를 부여하여 코드의 이해와 수정을 쉽게 할 수 있다.

아래 작성된 코드를 보자.

 

package com.devgsp.study.basic;

public class Variable4 {
	public static void main(String[] args) {
		// 비만도 측정(BMI 지수) 공식은 [몸무게 / 키의 제곱] (kg/㎡)
		// 몸무게가 73kg, 키가 170cm일 경우
		// '*' 연산자는 곱셈, '/' 연산자는 나눗셈을 의미한다. 연산자에 대해서는 추후 학습할 예정이다. 
		
		System.out.println("몸무게는 " + "73.0" + "kg, " + "키는 " + "1.7" + "m입니다.");
		System.out.println("BMI 지수는 " + 73 / (1.7 * 1.7) + "입니다.");
		System.out.println("=================================");
		
		// 상수를 사용할 경우 구하는 공식의 의미가 명확해지고, 다른 값을 계산할 때도 상수의 초기화 값만 변경하면 된다.
		final double WEIGHT = 73.0;
		final double HEIGHT = 1.7;
		double bmiCalc = WEIGHT / (HEIGHT * HEIGHT);
		
		System.out.println("몸무게는 " + WEIGHT + "kg, " + "키는 " + HEIGHT + "m입니다.");
		System.out.println("BMI 지수는 " + bmiCalc + "입니다.");
	}
}

 

var4_1
Variable4.java 실행 결과

 

[예제]

1. com.devgsp.study.basic
패키지에 MyVariable4 클래스를 생성하자.
2. '2022년 최저 임금'을 의미하는 정수형 상수 HOURLY_WAGE를 9160으로 초기화하자.
3. '일한 시간'을 의미하는 정수형 상수 WORK_HOUR160으로 초기화하자.
4. '월급'을 의미하는 정수형 변수 salary를 '2022년 최저 임금'과 '일한 시간'을 곱한 값으로 초기화하자. 곱셈을 의미하는 연산자는 '*'이다.
5. 위의 상수와 변수를 이용하여 아래와 같은 세 문장이 출력될 수 있는 프로그램을 작성하자. 

최저 시급은 xxx원입니다.
이번 달에 일한 시간은 xxx시간입니다.
당신의 월급은 xxx원입니다.

 

더보기
package com.devgsp.study.basic;

public class MyVariable4 {
	public static void main(String[] args) {
		final int HOURLY_WAGE = 9160;
		final int WORK_HOUR = 160;
		int salary = HOURLY_WAGE * WORK_HOUR;
		
		System.out.println("최저 시급은 " + HOURLY_WAGE + "원입니다.");
		System.out.println("이번 달에 일한 시간은 " + WORK_HOUR + "시간입니다.");
		System.out.println("당신의 월급은 " + salary + "원입니다.");
	}
}

 

var4_2
MyVariable4.java 실행 결과

 

 

 

반응형

'개발 지식 > Java' 카테고리의 다른 글

[Java] 형 변환  (0) 2022.07.13
[Java] 명명 규칙  (0) 2022.07.12
[Java] 변수(3) - 참조형 변수와 String  (0) 2022.07.10
[Java] 변수(2) - 자료형과 기본형 변수  (0) 2022.07.08
[Java] 변수(1) - 변수 선언 & 초기화  (0) 2022.07.06