[JAVA][TIL] 메소드 파라미터에 final 키워드 추가하기

Jimin·2024년 7월 25일
0

JAVA

목록 보기
28/30
post-thumbnail

메소드의 파라미터에는 반드시 final 키워드를 붙이는 컨벤션을 따르는 것이 좋다.

final 키워드를 붙여야하는 이유?

예측 가능한 코드를 만들기 위해서이다.

다변적인 변수는 프로그램의 흐름을 예측하기 힘들게 한다.
여기서 자바는 변수의 재할당을 막기 위해 final 키워드를 사용한다.

예시

요청 파라미터로 hello를 입력 받고, 이를 그대로 디비에 저장하고 싶은데, 중간에 다른 예상치 못한 코드가 요청 파라미터를 변경시킬 수 있다.

public Memo(String value) {
    validateLength(value);

    value = "hello"; // 예상치 못한 코드

    this.value = value;
}

이를 보완하기 위해 final 키워드를 붙이면, 재할당 시, 컴파일 에러를 발생시킬 수 있다.

public Memo(final String value) {
    validateLength(value);

    value = 1; // error: final parameter value may not be assigned

    this.value = value;
}

IntelliJ 설정하기

윈도우 기준으로 인텔리제이에서 메소드 추출 리팩토링 시, 자동으로 final 키워드를 붙여줄 수 있다.
다음의 화면과 같이 설정해주면 된다.

profile
https://github.com/Dingadung

0개의 댓글