Речь о том, что Holder2 может сохранить и вернуть объект любого типа, благодаря тому, что все объекты являются наследниками класса Object.
h2.set("Not an Automobile")
Сохраняет в холдере строку - объект типа String
h2.set(1)
Сохраняет в холдере 1 - которая сохраняется там как Integer
И да, вы всё правильно понимаете, предыдущие значения мы теряем.
Фразу
хранит объекты трех разных типов
нужно понимать, как "сохраняет" (в приведенном примере в один класс Holder2 сохранялись объекты трех разных типов), но хранился в каждый момент времени только один.
Из-за таких ошибок перевода и рекомендуют читать книги по программированию на языке оригинала.