본문 바로가기

Java

상수(Constant)와 리터럴(Literal)

상수(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