개발새발

  • 홈
  • 태그
  • 방명록

불변 객체 1

[Java] Java에서 final로 진짜_최종_최종_최종 불변 객체 만들기

이전 글에서 final을 앞에 달아주기만 하면 무적의 불변 객체가 되 .... .는줄 알았으나 ....불변 객체가 기본적으로 안전성을 높여주지만, 외부에서 참조하는 가변 객체를 포함하거나, 불변 객체의 일부 상태가 방어적 복사 없이 외부로 노출되는 경우 안전하지 않을 수 있다는 것. !! 그렇다면 불변 객체의 안전을 위협하는 상황에 대해서 알아보자1. 가변 객체를 포함할 때- 불변 객체 내부에 가변 객체가 포함되면, 해당 가변 객체의 상태가 외부에서 변경될 가능성이 생긴다. 예를 들어 Date 객체는 가변이므로, final 필드에 포함되더라도 객체 내부 상태가 바뀔 수 있다.public final class Period { private final Date startDate; private f..

Java/기본 2024.10.31
이전
1
다음
더보기
프로필사진

개발새발

방문자수Total

  • Today :
  • Yesterday :
  • 분류 전체보기 (102)
    • 네트워크 (7)
      • 기본 (7)
    • Java (22)
      • 기본 (14)
      • 알고리즘 (3)
      • Effective Java (2)
      • 강의 (0)
      • Spring (3)
    • JavaScript (16)
      • 기본 (1)
      • 응용하기 (5)
    • Node.js (11)
      • React (8)
      • Vue (0)
    • Sql (4)
    • 개발 (9)
      • 개발 일상 (2)
      • 개발 지식 (1)
      • 결제 (1)
      • 알면 좋은 (5)
    • Python (13)
      • 기본 (11)
      • 알고리즘 (2)
    • AWS (2)
    • 알고리즘 (18)
      • 개념 (3)
      • Programmers (6)
      • LeetCode (7)
      • 백준 (2)

Copyright © Kakao Corp. All rights reserved.

티스토리툴바