Por que um if / else if / else para um booleano simples não fornece um erro de "código inacessível"

Por que esse código não está fornecendo um erro "código inacessível"? Como um booleano só pode ser verdadeiro ou falso.

public static void main(String args[]) {
    boolean a = false;
    if (a == true) {

    } else if (a == false) {

    } else {
        int c = 0;
        c = c + 1;
    }
}