요청 데이터를 담고 있는 객체(requestDto)
인프런 jpa 강의에서 Entity를 dto로 변환하여 리턴하는 방식의 중요성을 배웠다.
이후 Dto를 요청 및 응답에 필요한 데이터만 포함시키도록 request, response로 구분하여 프로젝트를 진행하였다.
여기서 Dto를 관리하는 방식을 찾던 도중,
Dto를 관리하는 클래스에서 변수명에 final을 사용하는 부분을 볼 수 있었다.
함수의 파라미터에 final을 사용하는 것은 이전 프로젝트를 하면서도 본적이 있지만 넘어갔던 부분이라
Dto에 대해 알아보는 김에 같이 알아보기로 하였다 !
final 키워드란?
final 키워드를 사용하면 해당 변수는 값을 변경할 수 없다.
따라서 함수 내부에서 실수로 변수의 값을 변경하는 것을 방지할 수 있다.
또한, final 변수는 스레드 안전성을 보장하기 때문에 멀티스레드 환경에서 안전하게 사용할 수 있다.
장점
- 함수 파라미터에 final 키워드를 사용하면 함수 내부에서 해당 변수를 변경하는 경우 컴파일러가 에러를 발생시키기 때문에 변수의 값이 실수로 변경되는 것을 방지할 수 있다.
- 함수 호출 시에도 final 키워드를 사용하면 해당 변수를 다른 객체에 할당하거나 변경하는 것을 방지할 수 있다.
이는 객체 지향 프로그래밍에서 코드의 안정성을 높이고 디버깅을 용이하게 하기 위한 방법 중 하나라는 것을 알아보았다.
실무에서 사용될지는 정확히 모르지만, 함수가 다른 곳에서 사용되는 것을 예방해 줄 수 있다고 생각한다.
'Back-End > Java' 카테고리의 다른 글
[Java] EnumMap 정리 (0) | 2023.11.23 |
---|---|
[Java] Java 11 vs Java 17, JDK 17 정리 (0) | 2023.10.14 |
[자료구조] Java 우선순위 큐(Priority Queue) (0) | 2023.02.03 |
[Java] StringBuffer, StringBuilder (0) | 2022.12.31 |