Solo una puntualización.
En java salvo que si implente una política del foco donde indicas el orden que quieres para tus elementos ganen el foco... El orden viene determinada por la posición de los componentes dentro del contenedor. Y la prioridad del foco es de arriba a bajo y de izquierda a derecha. (independientemente del orden de definición, se orienta por los setBound y los setLocation o en su defecto los add)
De forma que si tenemos un único panel con cuatro elementos, el foco se situará en el primer componente que este más arriba y más a la izquierda, y el último será el que este más abajo y más a la derecha.
Si tuviesemos dos paneles y cada uno de ellos contuviese cuatro elementos, primerio iría al panel situado más arriba y más a la izquierda y recorrería todos sus componentes en el orden mencionado anteriormente. Y luego saltaría al siguiente panel y recorrería sus elementos con la misma política.
Espero me hayan entendido
Un saludo
kripton