Knowledge/Java
Java 상수 ( final은 무엇인가 )
TakeKnowledge
2019. 10. 10. 00:00
반응형
Java에서의 상수 선언은 기본적으로 변수 선언과 크게 다르지 않다.
변수는
1
2
|
int i;
// 변수 i 선언
|
이렇게 데이터 타입 + 변수 이름의 조합으로 선언한 변수 앞에
1
2
|
final int j;
// 상수 j 선언
|
이렇게 final만 붙이면 상수가 선언된다.
대신 대문자 명명규칙과 띄어쓰기가 필요한 경우 _을 쓸 것을 권장하니
1
2
3
|
final int J;
|
이렇게 선언하자.
이 상수는 변수와 달리 한번 값을 할당하면
다시는 값을 할당할 수 없는데
이런 상수를 어디다 쓸까?
크게 두가지다
1. 값이 변하면 위험한 경우
2. 값만 봤을때 무엇을 의미하는지 쉽게 파악할 수 없는 값을 사용할 때
1의 경우는 로직에 원주율을 사용해야 하는 경우를 가정하여 예를 들어보자
이럴 때 원주율 값이 변해버리면 계산에 착오가 생길 수 있다.
그렇기 때문에
1
|
final double PI = 3.141592653589793;
|
위와 같이 원주율 값을 PI 상수로 선언하여 사용하면 값이 변할 위험을 없앨 수 있다.
2의 경우는 기름 값으로 특정 연산을 해야 한다는 상황을 가정해서 예를 들어보자.
그런데
1
|
System.out.println(5 * 1390);
|
이렇게 적어놓으면 코드를 직접 짜지 않은 사람들은 ( 아마 코드를 짠 사람도 몇 달 뒤에 저 1390을 보면 저게 뭐지 할지도 모른다 ) 저 1390이 무슨 값을 의미하는지 알기 힘들 것이다.
이럴 때
1
2
3
4
5
|
final int OIL_PRICE = 1390;
// 기름 값을 의미하는 상수를 선언하고
System.out.println(5 * OIL_PRICE);
// 그 변수를 연산에 사용하면 코드의 의미가
|
반응형