자바에서 제공하는 굉장히 많은 클래스들이 불변 객체로 설계되어 있다. 자바의 데이터 타입을 가장 크게 보면 기본형(Primitive Type)과 참조형(Reference Type)으로 나눌 수 있다. 기본형 : 하나의 값을 여러 변수에서 절대로 공유하지 않는다.참조형 : 하나의 객체를 참조값을 통해 여러 변수에서 공유할 수 있다. 기본형 변수는 하나의 값을 공유하거나 공유하지 않는다는 뜻은 다음 예제와 같다.public static void main(String[] args) { int a = 10; int b = a; // a-> 값 복사 후 대입 System.out.println("a = " + a); System.out.println("b = " + b); b = 20; ..