본문 바로가기
Java

Java 에서 final keyword 란!?

by fygoo-826 2025. 1. 29.
728x90
반응형

 Java에서 final과 static final은 매우 중요한 개념으로, 주로 상수를 정의할 때 사용된다. 이 두 키워드는 클래스의 속성과 관련된 값의 불변성을 보장하고, 코드의 안정성을 높인다. 이번 포스팅에서는 final과 static final의 사용과 그 필요성을 정리해보고자 한다.

final

 final은 수정자(Modifier)로, 해당 변수나 메서드가 더 이상 변경될 수 없음을 나타낸다. 변수에 final 키워드가 붙으면, 변수를 초기화한 후에는 값을 변경할 수 없다. 이 때마다 값을 변경하려 하면 컴파일 오류가 발생한다.

public class Example {
    private final int VALUE_HOLD = 10;

    public void displayValue() {
        System.out.println(VALUE_HOLD);
    }
}

 

 이 경우, VALUE_HOLD는 항상 10으로 초기화되며, 어떤 객체에서든 이 값을 변경할 수 없다. 만약 여러 인스턴스가 이 변수를 가지고 있다면, 모든 인스턴스는 동일한 값인 10을 가질 것이다.

static final

 static final로 선언된 필드는 클래스가 로드될 때 메모리에 존재하며, JVM의 시작부터 종료될 때까지 유지된다. 이는 상수의 개념과 연결된다. static final는 주로 클래스 레벨에서 공통적으로 사용되는 고정된 값을 정의할 때 사용된다.

상수의 특징

  • static final 키워드 사용: Java에서 상수를 정의할 때 static final을 사용한다
  • 이름 규칙: 상수의 이름은 대문자로 작성하며, 단어 간 구분은 언더바(_)로 한다
  • 접근 제한자: 상수는 직접 접근이 가능하지만 일반적으로 public으로 설정하여 다른 클래스에서도 사용할 수 있게 한다
public class Constants {
    public static final double PI = 3.14;
    public static final int MAX_COUNT_LIBR = 155;
}

 

상수의 필요성

 상수는 코드의 가독성을 높이고, 유지보수를 간편하게 만들어준다. 상수 값을 중앙에서 관리할 수 있으면, 수정 시 다른 파일에서 값을 찾아 변경할 필요가 없이 한 곳만 수정하면 된다.


결론

Java의 final 및 static final은 코드의 안정성과 가독성을 높이는 데 중요한 역할을 한다. 이는 상수를 정의하기 위한 적절한 방법이기도 하며, 코드 전반에 걸쳐 일관성을 유지하는 데 기여한다. 따라서 개발자는 이러한 특성을 잘 활용하여 코드를 작성하는 것이 중요하다.

728x90
반응형

'Java' 카테고리의 다른 글

Java 에서 Enum  (1) 2025.02.02
Wrapper 클래스  (0) 2025.02.02
Java 에서 다형성과 객체지향 프로그래밍  (1) 2025.01.29
Java 에서 상속  (0) 2025.01.29
프로젝트, 코드 품질 관리에 대해서  (0) 2025.01.26