Krótka odpowiedź brzmi: nie.
Długą odpowiedzią jest to, że podklasy mogą powstawać na wiele sposobów, co zasadniczo uniemożliwia ich kategoryczne odnalezienie.
Nie możesz tego zrobić w czasie wykonywania, ale nie możesz znaleźć zajęć, dopóki nie zostaną załadowane i skąd wiadomo, że zostały załadowane? Możesz skanować każdy plik JAR i klasy, ale to nie jest ostateczne. Poza tym są takie rzeczy, jak ładowniki klas adresów URL.
Klasy wewnętrzne (statyczne i niestatyczne) to kolejny przypadek do rozważenia. Nazwane klasy wewnętrzne są łatwiejsze do znalezienia. Anonimowe klasy wewnętrzne są potencjalnie znacznie trudniejsze do znalezienia.
Należy również wziąć pod uwagę, że jeśli klasa ma podklasy, wówczas nowe podklasy mogą być tworzone w późniejszym czasie.
W języku C# można to zrobić, wykonując iterację definicji każdej klasy w zespole i testując każdą z tych klas, aby sprawdzić, czy implementuje ten interfejs. – ChrisW
Niestety, pytanie nie dotyczy C#. – Tom
Duplikat? "Jak znaleźć wszystkie podklasy danej klasy w Javie?", Http://stackoverflow.com/questions/492184/how-do-you-find-all-subclasses-of-a-given-class-in- java – Jonik