Używam refleksji, aby dodać trochę danych do prywatnej zmiennej wewnątrz klasy z biblioteki innej firmy. Po drodze istnieje około czterech różnych Wyjątków, które można rzucać; wszystkie są związane z refleksją, a wszystkie z nich są mało prawdopodobne. Ciężko koduję nazwę zaangażowanej klasy i zmiennej. Jest mało prawdopodobne, że otrzymam błędy nie znalezionej klasy lub pola nie znaleziono, chyba że biblioteka zostanie uaktualniona i zmieniła się znacząco.Łapanie kilku wyjątków i ponowne generowanie ogólnego wyjątku
Wolałbym nie zgłaszać wszystkich czterech wyjątków dla mojego rozmówcy. Prawdopodobnie nigdy ich nie zobaczy. Chciałbym po prostu złapać wszystkie te i rzucić inny wyjątek, aby powiedzieć "Wystąpił błąd odbicia Java, jest prawdopodobne, że biblioteka została uaktualniona i zmieniona w sposób niezgodny z tą metodą." Czy istnieje standardowy wyjątek Java, który można wyrzucić, co oznacza tylko ogólny błąd odbicia? Czy powinienem zdefiniować własne? A może najlepiej byłoby po prostu zadeklarować, że ta metoda może rzucić wszystkie możliwe wyjątki od refleksji?
dlaczego nie po prostu rzucić e.getCause()? Thread.stop() jest przesadny i przestarzały –
Czy próbowałeś? e.getCause() zwraca Throwable. Jak rzucasz Throwable bez konieczności zadeklarowania go? –