Java 8 introduced three new Javadoc tags — @apiNote, @implSpec, and @implNote — originating from JSR-335 (lambda expressions) to support finer-grained documentation of default methods. These tags divide documentation into four semantic categories: API specification, API notes, implementation specification, and implementation notes. While widely used in the JDK itself, they remain unofficial and undocumented. The post covers their meaning with code examples, inheritance behavior, IDE support status (Eclipse partially, IntelliJ and NetBeans lacking support at the time), and how to configure the Javadoc command-line tool and Maven Javadoc plugin to recognize them using the -tag argument.
Sort: