Não consegui entender por que no primeiro caso, quando é chamado o funcionário Pleno, o resultado é "Alurete", considerando o esquema apresentado:
Pleno > Alura > Funcionário > Caelum > Funcionário
No segundo caso faz sentido pois há um bypass na Class Alura, então ele retorna o único valor possível, Caelum. Mas no primeiro caso essa lógica não faz sentido pra mim, não consegui compreender como o conceito de heads explica isso.