В Java 10 опция --override-methods (detail|summary)
была добавлена к команде javadoc
:
Целью было снизить уровень шума при реализации или переопределении методов, но документация осталась без изменений.
Режимы
detail
режим (по умолчанию)
Режим detail
используется по умолчанию при использовании javadoc
без указания override-methods
.
Он ведет себя так, как документация была сгенерирована ранее:
- Если метод не переопределен, он будет в разделе «Методы, унаследованные от».
- Если метод переопределен, он будет задокументирован в разделе «Сведения о методе» независимо от того, была ли изменена его подпись или документация.
summary
режим
- Если метод переопределен и его документация изменена, он будет задокументирован в разделе «Сведения о методе».
- В противном случае он будет указан в разделе «Методы, объявленные в».
Режим summary
теперь используется для генерации документации JDK ( JDK-8189706 ).
Имейте в виду, что этот режим в настоящее время содержит ошибки, поскольку он игнорирует некоторые изменения в сигнатуре метода, которые должны быть задокументированы, см. JDK-8223607 .
Заключение
Вы увидите раздел «Методы, унаследованные от» или «Методы, объявленные в».
При сравнении двух документов (одна с «унаследованным от», другая с «объявленным в») для одного и того же класса, тогда в случае с «унаследованным от» может быть перечислено больше методов в разделе «Сведения о методе», тогда как для «объявленных в» Во-первых, некоторые методы вместо этого находятся в разделе «объявлено в».
Так что да, между ними есть разница.
Пример
Различие в поведении можно увидеть, например, для класса java.time.temporal.ChronoUnit
:
- Java 8 : в списке "Сведения о методе"
- Java 12 : Содержится в "Методах, объявленных в классе java.lang.Enum"; см. также источник , чтобы убедиться, что метод действительно переопределен