오직 API를 통해서만 다른 컴포넌트와 소통하며 서로의 내부 동작 방식에는 전혀 개의치 않는다. 정보 은닉, 혹은 캡슐화라고 하는 이 개념은 소프트웨어 설계의 근간이 되는 원리이다. ⭐ 정보 은닉의 핵심 : 모든 클래스와 맴버의 접근성을 가능한 한 좁혀야 한다. ⭐ public 클래스의 인스턴스 필드는 되도록 public이 아니어야 한다. public class User { private long userSn; private String userId; private String userPw; } ⭐ public 가변 필드를 갖는 클래스는 일반적으로 스레드(멀티 스레드에) 안전하지 않다. 스레드 불안정 : 상태 제어가 잘못되면 프로그램은 불안정해져서 먹통이 되거나 다운되는것을 말한다. ⭐ 클래스에서 pub..