Przy próbie wyodrębnienia metody może wystąpić jeden lub większa liczba poniższych typowych błędów:
Wybrany blok odwołuje się do typu lokalnego zadeklarowanego poza zaznaczeniem.
Deklaracja typu lokalnego nie jest częścią wybranego bloku, ale odwołuje się do niej jedna z instrukcji wybranych do wyodrębnienia.
Należy rozszerzyć zaznaczenie, aby objęło deklarację typu lokalnego, lub zawęzić je tak, aby nie było zaznaczone odwołanie do deklaracji typu lokalnego.Do typu lokalnego zadeklarowanego w wybranym bloku występuje odwołanie spoza tego bloku.
Zaznaczenie obejmuje deklarację typu lokalnego, ale odwołania do tego typu występują także poza wybranymi instrukcjami.
Należy rozszerzyć zaznaczenie, aby objęło wszystkie odwołania do typu lokalnego, lub zawęzić je tak, aby nie była zaznaczona deklaracja typu lokalnego.Niejednoznaczna wartość zwracana: wybrany blok zawiera więcej niż jedno przypisanie do zmiennej lokalnej.
W zaznaczonym bloku znaleziono więcej niż jedno przypisanie do zmiennej lokalnej. Należy zawęzić zaznaczenie, aby było wybrane tylko jedno przypisanie, lub rozszerzyć je tak, aby objęło wszystkie odwołania do zmiennych lokalnych poza jednym.Niejednoznaczna wartość zwracana: wyodrębniono wyrażenie, dostęp do elementu lokalnego lub instrukcję return.
Wybrane wyrażenie generuje więcej niż jedną wartość zwracaną. Dzieje się tak na przykład, jeśli zaznaczono wyrażenie i został również zmodyfikowany argument wyrażenia. Aby naprawić ten problem, należy rozszerzyć zaznaczenie tak, aby objęło również operację odczytu zmodyfikowanego argumentu.Zaznaczenie zawiera instrukcję rozgałęzienia (break), ale odpowiedni cel rozgałęzienia nie został wybrany.
Aby rozwiązać ten problem, należy rozszerzyć zaznaczenie, aby objęło cel instrukcji break/continue, lub zawęzić je tak, aby nie obejmowało instrukcji break/continue.Zaznaczenie zawiera instrukcję rozgałęzienia (continue), ale odpowiedni cel rozgałęzienia nie został wybrany.
Aby naprawić ten problem, należy rozszerzyć zaznaczenie, aby objęło cel instrukcji break/continue, lub zawęzić je tak, aby nie obejmowało instrukcji break/continue.Zaznaczenie zaczyna się wewnątrz komentarza.
Nie można wyodrębnić części komentarza. Należy rozszerzyć zaznaczenie, aby objęło cały komentarz, lub zawęzić je tak, aby komentarz nie był nim w ogóle objęty.Zaznaczenie kończy się wewnątrz komentarza.
Nie można wyodrębnić części komentarza. Należy rozszerzyć zaznaczenie, aby objęło cały komentarz, lub zawęzić je tak, aby komentarz nie był nim w ogóle objęty.Nie można wyodrębnić zaznaczenia kończącego się w środku instrukcji.
Należy dopasować zaznaczenie tak, aby w pełni obejmowało zestaw instrukcji lub wyrażeń. Użytkownik może rozszerzyć zaznaczenie do poprawnego zakresu za pomocą opcji Rozwiń wybór dostępnej w menu Edycja.
Java Development Tools (JDT)
Obsługa refaktoryzacji