2011-11-07 6 views
8

Mam tę funkcję z martwym kodem, oznaczonym przez Eclipse.Eclipse oznacza linie jako martwy kod

Mam dwie linie, które sprawdzają & b. Wiersze, w których zaznaczono b, są oznaczone jako puste.

Dlaczego Elipsy powoduje, że dwie linie są martwe? Jakaś pomoc? Bardzo dziękuje za twój czas.

+8

Czy istnieje inny kod w tej metodzie? Być może wcześniej wyłączyłeś 'b', co mówi Eclipse, że' b' nie może w tym momencie mieć wartości 'null'. W takim przypadku powinieneś również otrzymać ostrzeżenie takie jak "niepotrzebne zerowanie" na linii 'if (b == null)'. –

+1

@ Joachim +1000. –

+0

Nie wiem zbyt wiele o * Eclipse *, ale IntelliJ IDEA może analizować Twój kod w czasie rzeczywistym i ostrzegać Cię, że nie można dotrzeć do jakiegoś kodu. W twoim przypadku, gdyby IntelliJ wykrył, że * b * nigdy nie jest * null *, to ostrzegłoby cię, że te dwie linie nigdy nie zostaną osiągnięte, ponieważ warunek * b == null ** jest zawsze fałszywy. – TacticalCoder

Odpowiedz

15

Ponieważ już nazwiesz scenarios.size() w konstruktorze tablic. To gwarantuje, że scenarios nie ma wartości null lub spowoduje zgłoszenie wyjątku do tego punktu.

+0

Masz rację. Dzięki. – jn1kk