You are currently viewing Documenting Java Code with Examples

Documenting Java Code with Examples

  • Post author:
  • Post category:Java
  • Post comments:0 Comments
  • Post last modified:February 23, 2024

JavaDoc is a tool provided by Java for generating API documentation in HTML format from comments in source code. It’s an essential tool for Java developers to create clear and concise documentation for their classes and methods. In this tutorial, we’ll learn how to use JavaDoc effectively with examples.

Table of Contents

  1. What is JavaDoc?
  2. Writing JavaDoc Comments
  3. JavaDoc Tags
  4. Generating JavaDoc
  5. Viewing JavaDoc
  6. Best Practices
  7. Conclusion

1. What is JavaDoc?

JavaDoc is a documentation generator tool that comes with the Java Development Kit (JDK). It parses the source code and generates an HTML documentation file that describes the classes, interfaces, methods, and fields in your code. This documentation is helpful for understanding the API, especially when working with libraries or sharing code with others.

2. Writing JavaDoc Comments

JavaDoc comments are written in /** … */ format just above the class, method, or field declarations. Here’s an example of a JavaDoc comment for a method:

 * Returns the sum of two integers.
 * @param a The first integer
 * @param b The second integer
 * @return The sum of a and b
public int add(int a, int b) {
    return a + b;

In this example:

  • /** ... */ denotes a JavaDoc comment block.
  • @param is used to describe the parameters of the method.
  • @return is used to describe the return value of the method.

3. JavaDoc Tags

JavaDoc comments can include various tags to provide additional information about the code. Here are some commonly used tags:

  • @param: Describes a method parameter.
  • @return: Describes the return value of a method.
  • @throws: Describes exceptions thrown by a method.
  • @see: Provides a reference to another class or method.
  • @deprecated: Marks a method as deprecated.
  • @author: Specifies the author.
  • @version: Specifies the version of the class or method.

Here’s an example using some of these tags:

 * Calculates the area of a rectangle.
 * @param length The length of the rectangle
 * @param width The width of the rectangle
 * @return The area of the rectangle
 * @throws IllegalArgumentException if length or width is negative
 * @see <a href="">Rectangle on Wikipedia</a>
 * @deprecated Use {@link #calculateArea(double, double)} instead
 * @since 1.0
 * @version 1.2
public double calculateRectangleArea(double length, double width) {
    if (length < 0 || width < 0) {
        throw new IllegalArgumentException("Length and width must be non-negative");
    return length * width;

4. Generating JavaDoc

To generate JavaDoc, use the javadoc command followed by the source files you want to document. For example:


This will generate HTML files in the current directory with the documentation for MyClass.

You can also specify multiple files and directories:

javadoc -d docs -sourcepath src -subpackages com.mycompany
  • -d docs: Specifies the output directory for generated HTML files.
  • -sourcepath src: Specifies the source code directory.
  • -subpackages com.mycompany: Specifies the package to generate documentation for.

5. Viewing JavaDoc

Once you’ve generated the JavaDoc HTML files, you can open them in a web browser. Simply open the index.html file in the generated directory:

cd docs
open index.html  # on macOS
start index.html # on Windows

6. Best Practices

  • Be descriptive: Write clear and concise descriptions for classes, methods, and parameters.
  • Use appropriate tags: Utilize tags like @param, @return, and @throws to provide detailed information.
  • Maintain consistency: Follow a consistent style throughout your JavaDoc comments.
  • Update regularly: Keep your JavaDoc comments up-to-date with the code changes.

7. Conclusion

JavaDoc is a powerful tool for documenting your Java code, making it easier for developers to understand and use your APIs. In this tutorial, we’ve covered the basics of writing JavaDoc comments, using tags, generating JavaDoc, and best practices. Properly documented code not only helps others but also serves as a useful reference for your future self.

Leave a Reply