본문 바로가기
Java/Java

상수 (Constant Variable)란?

by 박채니 2022. 2. 25.

안녕하세요, 코린이의 코딩 학습기 채니 입니다.

 

개인 포스팅용으로 내용에 오류 및 잘못된 정보가 있을 수 있습니다.


상수 (Constant Variable)란?

- 한 번 값이 지정되면 값 변경이 불가하고, 읽기 전용인 변수

- 변경 되서는 안 되는 값 / 변경할 필요가 없는 값들을 상수로 지정

 

상수 명명 규칙

① 상수명은 모두 대문자로 작성

② 단어가 2개 이상이라면, _ 을 사용해 분리

 

상수 초기화 방법

final 자료형 변수명 = 값;

 

일반 지역변수들은 스택메모리에 값이 저장되지만,

객체가 만들어질 때 final 지역 변수는 상수 영역에 최초로 값이 초기화 될 때 1개가 복사됩니다.

 

final 필드는 일반 필드와 달리 강제 초기화 되지 않기 때문에,

선언과 값을 분리하였을 경우 적어도 생성자에서는 값을 대입해야 합니다.

 

또한, jdk에서 제공하는 상수 메소드들이 있습니다.

그 중 MIN_VALUE, MAX_VALUE 메소드를 사용하여 각 자료형들의 범위를 나타내보았습니다.

 

public void test2() {
//		final int MY_AGE = 20;
//		System.out.println(MY_AGE);
		
		System.out.println("byte : " + Byte.MIN_VALUE + " ~ " + Byte.MAX_VALUE);
		System.out.println("short : " + Short.MIN_VALUE + " ~ " + Byte.MAX_VALUE);
		System.out.println("int : " + Integer.MIN_VALUE + " ~ " + Integer.MAX_VALUE);
		System.out.println("long : " + Long.MIN_VALUE + " ~ " + Long.MAX_VALUE);
		System.out.println("float : " + Float.MIN_VALUE + " ~ " + Float.MAX_VALUE);
		System.out.println("double : " + Double.MIN_VALUE + " ~ " + Double.MAX_VALUE);
		System.out.println(Math.PI);
	}
   
@콘솔출력값
byte : -128 ~ 127
short : -32768 ~ 127
int : -2147483648 ~ 2147483647
long : -9223372036854775808 ~ 9223372036854775807
float : 1.4E-45 ~ 3.4028235E38
double : 4.9E-324 ~ 1.7976931348623157E308
3.141592653589793