private final 쓰는 이유

Ashley·2023년 12월 13일

출처 : https://jwdeveloper.tistory.com/179

* private final 쓰는 이유

final

  • final 을 선언함으로써 상수라는 개념, 절대 변하지 않는 값. ReadOnly
  • 자바 언어에서 final은 오직 한번만 할당할 수 있는 entity 정의할 때 사용
  • final 로 선언된 변수가 할당되면 항상 같은 값을 가진다.
  • final 변수가 객체를 참조하고 있다면, 그 객체의 상태가 바뀌어도 final 변수는 매번 동일한 내용을 참조
  • 클래스, 메서드, 변수 각각에 붙을 수 있음
    가공해선 안되는 객체일 때 사용

상수를 선언할 때 prviate static final 을 선언.

private final 선언하지 private final static 을 선언하는 이유는 뭘까?

초기화한 값을 끝까지 유지하기 위해서이다. -> 값을 불변으로 만든다.
즉, 절대 해당 값을 바꾸지 않겠다는 표현과 유사

private final 선언의 경우
1. 직접적으로 값을 참조할 수 없지만 생성자를 통해 값을 참조

  1. 변수를 사용하면 재할당 하지 못하며, 해당 필드, 메서드 별로 호출할 때마다 새로이 값이 할당(인스턴스화)한다.

  2. 객체 생성 시 private final 변수는 초기화가 가능

private static final 선언의 경우
1. 생성자를 통해 값을 참조할 수 없다.
private static final 변수는 무조건 초기화 되어있어야 한다.
즉, 절대 해당 값을 바꾸지 않겠다는 표현과 유사

  1. 변수를 사용하면 재할당 하지 못하며, 메모리에 한번 올라가면 같은 값을 클래스 내부의 전체 필드, 메서드에서 공유한다.

profile
처음은 힘들지만, 하면 할 수 있어오!

0개의 댓글