@EqualsAndHashCode equals()dhk hashcode를 생성한다.
@Data @Getter, @Setter, @RequiredArgsConstructor, @ToString, @EqualsAndHashCode
핵심 로직은 외부 디펜던시를 가지고 있지 않는 것이 좋다.
functional interface의 구현체 안에서 자기 스코프 밖에 있는 변수를 write 하면 안된다.
chars()