Спасибо за упоминание нашего инструмента - DocFlex / Javadoc
Кстати, просто исключая классы и участников, это еще не все. После этого сгенерированный JavaDoc должен выглядеть согласованно.
Например, предположим, что у нас следующая ситуация:
- класс
C1
расширяет класс C2
- класс
C2
расширяет класс C3
- class
C3
содержит открытый метод m()
- который должен быть документирован
Теперь давайте предположим, что класс C3
должен быть исключен из документации.
Что будет с методом m()
?
Это должно быть указано в документации как заявлено в классе C2
!
Тогда для класса C1
m()
должно отображаться как унаследованное от класса C2
(а не из класса C3
, как это на самом деле в коде).
Та же ситуация с полями, которая на самом деле еще сложнее, потому что поля с одинаковыми именами не перегружают, а затеняют друг друга. Например
- класс
C1
расширяет класс C2
- класс
C2
реализует интерфейс I
- класс
C2
содержит личное поле F
- интерфейс
I
содержит открытое поле F
- которое может быть задокументировано
Предположим, интерфейс I
должен быть исключен из документации.
Что делать с полем I.F
?
На самом деле ничего! Он не должен попадать в документацию, потому что он скрыт C2.F
, который является частным и, следовательно, должен быть невидимым.
Решает ли простая настройка (делегирование) Стандартного Доклета такие проблемы?
Наш инструмент делает!