кто может объяснить, почему такой код не проходит (и выдет анализом что проверка львов и тигров всегда "ложь")
if (o instanceof Cat) {
            sss = "Кот";
        } else {
            if (o instanceof Tiger) {
                sss = "Тигр";
            } else {
                if (o instanceof Lion) {
                    sss = "Лев";
                }
а такой проходит внутреннюю проверку без претензий и при выполнении кода также выдает верный ответ
if (o instanceof Tiger) {
            sss = "Тигр";
        } else {
            if (o instanceof Lion) {
                sss = "Лев";
            } else {
                if (o instanceof Cat) {
                    sss = "Кот";
                }