모든 객체의 최상위
부모 클래스이다.상속받는게 없으면,
묵시적으로 Object를 상속
받는다.모든 객체가 Object 클래스의 공통된 기능을 사용할 수 있다.
모든 객체의 부모이므로, 모든 객체를 참조할 수 있다. (다형성)
📌대전제 (강조) : 모든 변수는 값을 복사해서 대입한다.
기본형
: 본인 값 그대로이기 때문에 하나의 값을 여러 변수에서 절대 공유하지 않는다.
참조형
: 본인 안의 값이 참조값이기 때문에 복사해서 대입하면 여러 변수에서 공유하게 된다.
📌 불변 객체에서 변경과 관련된 메서드들은 보통 객체를 새로 만들어서 반환하기 때문에 꼭! 반환 값을 받아야 한다.
관례상, 불변 객체에서 값을 바꾸는 메서드는
with
로 사용하는 경우가 많다.
ex) Coffee with Sugar : 기존 커피에 설탕좀 넣은 새로운걸 주세요