Buenas.
Creo que no se trata de erratas muy importantes, pero por si acaso abro este hilo.
En la entrega CU00915C se menciona varias veces a la clase Persona cuando, me parece, la explicación se está refiriendo a la clase ConjuntoPersonas:
Para poder devolver un objeto de tipo Iterator (que es algo a lo que al fin y al cabo nos obliga la interface Iterable) necesitamos instanciar un objeto Iterator y esto no podemos hacerlo directamente. Para resolver este problema, recurrimos a definir una clase interna dentro de la clase Persona denominada MiIteratorPersona, que implementará la interface Iterator, y que por tanto nos permitirá devolver una instancia de Iterator para nuestra clase Persona.
El acceso elegido para crear la clase MiIteratorPersona es protected. ¿Por qué? Porque esta clase no tiene interés que sea visible desde otras clases. Unicamente nos interesa que sea visible desde la clase Persona o subclases de la clase Persona.
En el siguiente párrafo, donde pone "para implementar la interface iterator" creo que debería poner "para implementar la interfaz Iterable":
A nivel de términos es un poco confuso, pero cuando te acostumbres y realices unos cuantos ejercicios te resultará más fácil. Decimos que es confuso porque parece un trabalenguas: para implementar la interface iterator hemos de sobreescribir el método iterator(), y para ello hemos de poder devolver un objeto Iterator, lo cual logramos creando una clase interna que implementa la interface Iterator. Como decimos, una especie de trabalenguas.
¡Saludos!