출처 : https://jwdeveloper.tistory.com/179
* private final 쓰는 이유
초기화한 값을 끝까지 유지하기 위해서이다. -> 값을 불변으로 만든다.
즉, 절대 해당 값을 바꾸지 않겠다는 표현과 유사
private final 선언의 경우
1. 직접적으로 값을 참조할 수 없지만 생성자를 통해 값을 참조
변수를 사용하면 재할당 하지 못하며, 해당 필드, 메서드 별로 호출할 때마다 새로이 값이 할당(인스턴스화)한다.
객체 생성 시 private final 변수는 초기화가 가능
private static final 선언의 경우
1. 생성자를 통해 값을 참조할 수 없다.
private static final 변수는 무조건 초기화 되어있어야 한다.
즉, 절대 해당 값을 바꾸지 않겠다는 표현과 유사
