Du könntest auf projecteuler.net gehen und die Aufgaben dort mit Java realisieren.
Sind lauter so kleine Dinge die man mit Programmieren lösen kann. Die ersten Aufgaben sind einfach, nur später wird es dann härter
Wird auch öfter gerne mal in Vorstellungsgesprächen hergenommen !
Ansonsten würde ich eher raten dir selbst Aufgaben zu stellen.
Paar Beispiele:
- Eigene Klasse schreiben die das gleiche tut wie eine Java Liste, gerne mit Generics
- Einen Suchbaum umsetzen
- Rekursion üben, einmal ohne StackOverflow auszulösen und einmal mit

- Einen eigenen Iterator schreiben, der immer +2 Schritte weiterläuft
- Eine XML Datei mit DOM parsen
- Unterschied zwischen & und && rausfinden
- Exceptions behandeln und durch Vererbung durchreichen (von unten nach oben)
- Multithread und Synchronisation (Mutex & Semaphor)
- Design Patterns üben, Observer ist z.B. recht wichtig
- Interface Vererbung
- 2D und 3D Array, sowie 2D Array Objekt in eine Liste einfügen
- Unterschied zwischen Überladen und Überschreiben
- API Doku studieren und Vererbungshierarchie lernen, damit man sich nicht wundert woher die Methoden kommen...
Das sind so die Dinge die man im Studium macht. Von "Kopf bis Fuß" würde ich abraten.
Kam mir immer irgendwie kindisch vor, unterhalten wollen weil die Materie selbst langweilig ist ...dann halt kein Java lernen !