TIL 2021.03.07

Kyu·2021년 3월 7일
0

TIL

목록 보기
56/322

문제 출발점 링크

날짜가 String 형태이면 어떤 단점이 있을까?

질문을 해결하기 위해서 먼저 기본적으로 현재 시각을 어떻게 불러올 수 있는지 알아보았다. 자바 8 이전에는 Date,Calendar 를 이용했다. 그런데 문제점이 있어서 당시에 날짜와 시간을 관리하는 api를 따로 사용했다. 자바 8 부터는 LocalDate, LocalTime, LocalDateTime 이 나오면서 그 문제점들이 해결됐다.

LocalDateTime 를 사용하는 방법을 익히기 위해서 이 포스트를 읽고 있었는데, 이전에 Date. Calendar 를 사용하면서 첫번째 문제점으로 불변 객체가 아니라서 외부에서 악의적으로 데이터를 고칠 수도 있다라는 것을 언급했다. 이걸 보고 날짜가 String 이면 같은 문제가 발생하지 않을까 생각했다.

왜냐하면 생성한 String 객체는 쉽게 값을 바꿀 수 있지않을까? 라는 생각을 했는데, 아직 구체적인 근거는 생각나지 않는다. 그렇게 치면 LocalDateTime 과 String 둘 다 생성하면 불변 객체인지 먼저 확인해봐야한다. 어떻게 확인해야할까?

String은 IDE에서 테스트해보면 값이 바뀐다. (값이 바뀌는 게 아니라 아마도 참조가 바뀌는거라고 알고 있다.) 어쨋든, 이렇게 값이 바뀐다는 것은 불변 객체가 아니라는 말 아닐까? 불변객체에 대해서도 좀 더 조사해봐야겠다.

자바에서 날짜 & 시간 데이터 만들기 정리

profile
TIL 남기는 공간입니다

0개의 댓글