Por afinar un poco...
En realidad lo de tener el .java en la misma carpeta que el paquete no es obligatorio, aunque los IDEs (NetBeans, Eclipse) te obliguen a hacerlo. Solo hace falta para los .class. Con los .java es buena practica, pero no es obligatorio.
Solo por si alguno se pregunta por ahi como puede ser que a el le funcione

.