우리는 어떤 정수에 1을 더했을 때 원래 정수가 변한다고 생각하기 보다는 원래 정수에 1이 더해진 새로운 값을 갖게 될 것을 예상한다. 하지만 객체는 우리 예상대로 작동하지 않는다.
< 현재 구현해야할 목록 >
아래와 같이 구현하면 삼각측량을 구현할 수 있다.
@Test
public void testEquality() {
assertTrue(new Dollar(5).equals(new Dollar(5)));
assertFalse(new Dollar(5).equals(new Dollar(6)));
}
public boolean equals(Object object) {
Dollar dollar = (Dollar) object;
return amount == dollar.amount;
}
삼각측량이란,
만약 라디오 신호를 두 수신국이 감지하고 있을 때, 수신국 사이의 거리가 알려져있고 각 수신국이 신호의 방향을 알고 있다면, 이 정보들 만으로 충분히 신호의 거리와 방위를 알 수 있다.
< 현재 구현해야할 목록 >
일단 동일성 문제는 일시적으로 해결했다. 하지만 null 이나 다른 객체랑 비교하면 모른다. 그렇기에 일단 할 일에 적어둔다.
우리가 이번 장에서 한 일은 아래와 같다.