상수(Constant) 란
상수란 한 번 값을 할당하면 프로그램 실행 도중 그 값이 변경되지 않는 변수를 의미한다. Java 에서는 상수를 정의하기 위해서는 final 키워드를 변수 앞에 붙여 사용한다.
정적 상수를 선언할 때는 static final 키워드를 사용하며 대문자로 작성하고 공백은 ‘_’ 로 표시한다.
인스턴스 상수를 선언할 때는 final 키워드를 사용하며 일반 변수 처럼 카멜 케이스로 작성한다.
이러한 상수를 초기화 하는 방법은 다음과 같다.
1. 선언시 초기화
public static final int MAX_COUNT = 100;
public static final String DATABASE_URL = "jdbc:mysql://localhost:3306/mydatabase";
2. 생성자에서 초기화
public class Configuration {
final int timeout;
public Configuration(int timeout) {
this.timeout = timeout;
}
}
3. 초기화 블록에서 초기화
public class AppSettings {
final int windowWidth;
{
windowWidth = 800;
}
}
* 참고로 첫번째 방식처럼 선언시 리터럴을 사용해 초기화된 상수를 리터럴 상수라고 한다.
리터럴(Literal) 이란
리터럴은 소스코드 내에서 고정된 값을 직접 나타내는 데이터를 의미한다. 아래 코드에서 number와 MAX_VALUE에 들어가는 200과 1000이 리터럴이다.
int number = 200;
public static final int MAX_VALUE = 1000;
Java는 아래와 같이 다양한 유형의 리터럴을 지원한다.
int age = 30; // 30은 정수 리터럴
double price = 19.99; // 19.99는 부동소수점 리터럴
char grade = 'A'; // 'A'는 문자 리터럴
String name = "Java"; // "Java"는 문자열 리터럴
boolean isJavaFun = true; // true는 논리 리터럴
출처 : https://mommoo.tistory.com/14 https://www.tcpschool.com/cpp/cpp_datatype_constant |
'Java' 카테고리의 다른 글
BigDecimal (0) | 2024.05.20 |
---|---|
String과 String Constant Pool (0) | 2024.03.26 |
GC(Garbage Collection, Garbage Collector) (1) | 2023.10.29 |
JVM 구조 (0) | 2023.10.22 |
에러(Error)와 예외(Exception) (1) | 2023.09.04 |