2012-11-07 13 views
10

Mam wyliczenie, które implementuje adnotację i otrzymuję ostrzeżenie: Adnotacja typu A nie powinna być używana jako superinterface dla MyClass.Wartość @SuppressWarnings z adnotacją jako superinterfejsem

Czy istnieje wartość @SuppressWarnings, która obsługuje to ostrzeżenie? Nie chcę używać @SuppressWarnings ("all"), wolałbym mieć ostrzeżenie niż stłumić wszystkie z nich.

Używam Eclipse.

+1

Czy na pewno chcesz przedłużyć kolejną adnotację? Adnotacje nie są obsługiwane przez takie klasy JVM, więc nie będzie można uzyskać tego samego rodzaju dziedziczenia. –

+0

To nie jest mój kod, więc nie mam wiele do powiedzenia. Właśnie z nim pracuję, więc chciałem zminimalizować bałagan. – user1294431

+0

Zastanówmy się nad iface AnnotationReader JAXB - uważam, że jego jedynym celem jest "wykrywanie" adnotacji, których "nie ma". Następnie chcesz utworzyć syntezę annot. instancje. Bez refleksji najłatwiej byłoby po prostu zaimplementować interfejs adnotacji. A potem - otrzymujesz to ostrzeżenie. –

Odpowiedz

3

Uważam, że nie ma takiej wartości dla @SuppressWarnings. Gdyby była taka wartość, kompilator dałby ci wskazówkę, jak go użyć wraz z ostrzeżeniem.

Ponieważ nie istnieje, prawdopodobnie oznacza to, że nie warto zamieniać enum na adnotację.

Jeśli nadal chcesz iść tą drogą, myślę, że jedyną dostępną opcją jest @SuppressWarnings("all").

+0

Dzięki, pomyślałem tak samo. Chciałem tylko być tego pewien. – user1294431

Powiązane problemy