완성된 Entry
list.add(entry)
문자열과 시간을 따로 배열에 넣지 않아 인덱스 불일치를 막는다.
MyArrayList<Entry>는 공개 API에서 Entry만 받고, Object[]라는 내부 사정과 캐스팅을 경계 안에 가둔다.
문자열과 시간을 따로 배열에 넣지 않아 인덱스 불일치를 막는다.
E는 한 인스턴스의 원소 타입으로 고정된다. 잘못된 타입은 호출 시점의 컴파일 오류가 된다.
핵심record Entry가 저장 타입을 고정한다. 이후 배열을 연결 목록으로 바꿔도 공개 경계는 add(Entry)와 get(): Entry 방향을 유지한다.