Как проверить, есть ли в классе java определенный метод?

У меня есть схема xml (сгенерированная автоматически с помощью trang), которая постоянно меняется. Эти изменения не очень продуманы. Из этой схемы добавляются или удаляются только некоторые элементы. Из этой схемы я создаю классы Java (используя cxf), с помощью которых я буду разбирать XML-документ.

По мере изменения схемы мои автоматически сгенерированные классы Java также меняются. Опять же, как и в случае со схемой, изменения в классах Java не очень велики.Например, если в схему добавляется элемент, скажем, elemA; некоторые связанные функции говорят, что getElemA()и setElemA()добавляются в автоматически сгенерированный класс Java.

Теперь, как я могу убедиться, что конкретная функция существует в этих автоматически сгенерированных классах? Одно из решений состоит в том, чтобы написать схему вручную, чтобы охватить все возможные элементы xml. Это то, что я в конечном итоге сделаю. Но пока я не исправил формат файла xml.

ОБНОВЛЕНИЕ:

Существует вероятность того, что метод getElemA()может быть определен в автоматически сгенерированных классах. У меня нет контроля над автогенерацией этих классов. Но в моем основном классе, если есть следующий код,

If method getElemA exists then 
     ElemA elemA = getElemA()

Этот код всегда будет в моем основном классе. Если метод getElemA()сгенерирован в одном из автоматически сгенерированных классов, то проблем нет. Но если этот метод не сгенерирован, то компиляторы жалуются, что этого метода нет ни в одном классе.

Можно ли как-нибудь заставить компилятор не жаловаться на эту функцию во время компиляции?

24
задан leaqui 7 January 2016 в 20:06
поделиться