Efectivamente final vs final - Comportamiento diferente

Hasta ahora pensé que efectivamente final y final son más o menos equivalentes y que el JLS los trataría de manera similar, si no idéntica, en el comportamiento real. Entonces encontré este escenario artificial: final int a = 97; System.out.println(true ? a : 'c'); // outputs a // versus int a...