Package org.eclipse.jdt.core.dom

# Class Javadoc

java.lang.Object
org.eclipse.jdt.core.dom.ASTNode
org.eclipse.jdt.core.dom.Comment
org.eclipse.jdt.core.dom.Javadoc

public class Javadoc extends Comment
AST node for a Javadoc-style doc comment.

     Javadoc:
       /**  { TagElement } */

Since:
  2.0
Restriction:
  This class is not intended to be instantiated by clients.

## Field Summary

Fields
Modifier and Type
Field
Description
`static final SimplePropertyDescriptor`
`COMMENT_PROPERTY`
Deprecated.
Replaced by `TAGS_PROPERTY` in the JLS3 API.
`static final SimplePropertyDescriptor`
`MARKDOWN_PROPERTY`
The "markdown" structural property of this node type (type: `Boolean`) (added in JLS23 API).
`static final ChildListPropertyDescriptor`
`TAGS_PROPERTY`
The "tags" structural property of this node type (element type: `TagElement`).

### Fields inherited from class org.eclipse.jdt.core.dom.ASTNode

`ANNOTATION_TYPE_DECLARATION, ANNOTATION_TYPE_MEMBER_DECLARATION, ANONYMOUS_CLASS_DECLARATION, ARRAY_ACCESS, ARRAY_CREATION, ARRAY_INITIALIZER, ARRAY_TYPE, ASSERT_STATEMENT, ASSIGNMENT, BLOCK, BLOCK_COMMENT, BOOLEAN_LITERAL, BREAK_STATEMENT, CASE_DEFAULT_EXPRESSION, CAST_EXPRESSION, CATCH_CLAUSE, CHARACTER_LITERAL, CLASS_INSTANCE_CREATION, COMPILATION_UNIT, CONDITIONAL_EXPRESSION, CONSTRUCTOR_INVOCATION, CONTINUE_STATEMENT, CREATION_REFERENCE, DIMENSION, DO_STATEMENT, EitherOr_MultiPattern, EMPTY_STATEMENT, ENHANCED_FOR_STATEMENT, ENUM_CONSTANT_DECLARATION, ENUM_DECLARATION, EXPORTS_DIRECTIVE, EXPRESSION_METHOD_REFERENCE, EXPRESSION_STATEMENT, FIELD_ACCESS, FIELD_DECLARATION, FOR_STATEMENT, GUARDED_PATTERN, IF_STATEMENT, IMPORT_DECLARATION, INFIX_EXPRESSION, INITIALIZER, INSTANCEOF_EXPRESSION, INTERSECTION_TYPE, JAVADOC, JAVADOC_REGION, JAVADOC_TEXT_ELEMENT, LABELED_STATEMENT, LAMBDA_EXPRESSION, LINE_COMMENT, MALFORMED, MARKER_ANNOTATION, MEMBER_REF, MEMBER_VALUE_PAIR, METHOD_DECLARATION, METHOD_INVOCATION, METHOD_REF, METHOD_REF_PARAMETER, MODIFIER, MODULE_DECLARATION, MODULE_MODIFIER, MODULE_QUALIFIED_NAME, NAME_QUALIFIED_TYPE, NORMAL_ANNOTATION, NULL_LITERAL, NULL_PATTERN, NUMBER_LITERAL, OPENS_DIRECTIVE, ORIGINAL, PACKAGE_DECLARATION, PARAMETERIZED_TYPE, PARENTHESIZED_EXPRESSION, PATTERN_INSTANCEOF_EXPRESSION, POSTFIX_EXPRESSION, PREFIX_EXPRESSION, PRIMITIVE_TYPE, PROTECT, PROVIDES_DIRECTIVE, QUALIFIED_NAME, QUALIFIED_TYPE, RECORD_DECLARATION, RECORD_PATTERN, RECOVERED, REQUIRES_DIRECTIVE, RETURN_STATEMENT, SIMPLE_NAME, SIMPLE_TYPE, SINGLE_MEMBER_ANNOTATION, SINGLE_VARIABLE_DECLARATION, STRING_LITERAL, SUPER_CONSTRUCTOR_INVOCATION, SUPER_FIELD_ACCESS, SUPER_METHOD_INVOCATION, SUPER_METHOD_REFERENCE, SWITCH_CASE, SWITCH_EXPRESSION, SWITCH_STATEMENT, SYNCHRONIZED_STATEMENT, TAG_ELEMENT, TAG_PROPERTY, TEXT_BLOCK, TEXT_ELEMENT, THIS_EXPRESSION, THROW_STATEMENT, TRY_STATEMENT, TYPE_DECLARATION, TYPE_DECLARATION_STATEMENT, TYPE_LITERAL, TYPE_METHOD_REFERENCE, TYPE_PARAMETER, TYPE_PATTERN, UNION_TYPE, UNNAMED_CLASS, USES_DIRECTIVE, VARIABLE_DECLARATION_EXPRESSION, VARIABLE_DECLARATION_FRAGMENT, VARIABLE_DECLARATION_STATEMENT, WHILE_STATEMENT, WILDCARD_TYPE, YIELD_STATEMENT`

## Method Summary

Modifier and Type
Method
Description
`String`
`getComment()`
Deprecated.
The comment string was replaced in the 3.0 release by a representation of the structure of the doc comment.
`boolean`
`isMarkdown()`
Returns whether this javadoc is a markdown comment (added in JLS23 API).
`static List`
`propertyDescriptors(int apiLevel)`
Returns a list of structural property descriptors for this node type.
`void`
`setComment(String docComment)`
Deprecated.
The comment string was replaced in the 3.0 release by a representation of the structure of the doc comment.
`void`
`setMarkdown(boolean isMarkdown)`
Sets whether this javadoc is a markdown comment (added in JLS23 API).
`List`
`tags()`
Returns the live list of tag elements that make up this doc comment.

### Methods inherited from class org.eclipse.jdt.core.dom.Comment

`getAlternateRoot, isBlockComment, isDocComment, isLineComment, setAlternateRoot`

### Methods inherited from class org.eclipse.jdt.core.dom.ASTNode

`accept, copySubtree, copySubtrees, delete, equals, getAST, getFlags, getLength, getLocationInParent, getNodeType, getParent, getProperty, getRoot, getStartPosition, getStructuralProperty, hashCode, nodeClassForType, properties, setFlags, setProperty, setSourceRange, setStructuralProperty, structuralPropertiesForType, subtreeBytes, subtreeMatch, toString`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

## Field Details

### COMMENT_PROPERTY

public static final SimplePropertyDescriptor COMMENT_PROPERTY
Deprecated.
Replaced by `TAGS_PROPERTY` in the JLS3 API.
The "comment" structural property of this node type (type: `String`) (JLS2 API only).

Since:
  3.0

### TAGS_PROPERTY

public static final ChildListPropertyDescriptor TAGS_PROPERTY
The "tags" structural property of this node type (element type: `TagElement`).

Since:
  3.1

### MARKDOWN_PROPERTY

public static final SimplePropertyDescriptor MARKDOWN_PROPERTY
The "markdown" structural property of this node type (type: `Boolean`) (added in JLS23 API).

Since:
  3.40
Restriction:
  This field belongs to a preview feature and is not intended to be referenced by clients

## Method Details

### propertyDescriptors

public static List propertyDescriptors(int apiLevel)
Returns a list of structural property descriptors for this node type. Clients must not modify the result.

Parameters:
  `apiLevel` - the API level; one of the `AST.JLS*` constants
Returns:
  a list of property descriptors (element type: `StructuralPropertyDescriptor`)
Since:
  3.0

### getComment

public String getComment()
Deprecated.
The comment string was replaced in the 3.0 release by a representation of the structure of the doc comment. See `tags`.
Returns the doc comment string, including the starting and ending comment delimiters, and any embedded line breaks.

Returns:
  the doc comment string
Throws:
  `UnsupportedOperationException` - if this operation is used in an AST later than JLS2

### setComment

public void setComment(String docComment)
Deprecated.
The comment string was replaced in the 3.0 release by a representation of the structure of the doc comment. See `tags`.
Sets or clears the doc comment string. The documentation string must include the starting and ending comment delimiters, and any embedded line breaks.

Parameters:
  `docComment` - the doc comment string
Throws:
  `IllegalArgumentException` - if the Java comment string is invalid
  `UnsupportedOperationException` - if this operation is used in an AST later than JLS2

### tags

public List tags()
Returns the live list of tag elements that make up this doc comment.

The tag elements cover everything except the starting and ending comment delimiters, and generally omit leading whitespace (including a leading "*") and embedded line breaks. The first tag element of a typical doc comment represents all the material before the first explicit doc tag; this first tag element has a `null` tag name and generally contains 1 or more `AbstractTextElement`s, and possibly interspersed with tag elements for nested tags like "`String`". Subsequent tag elements represent successive top-level doc tag (e.g., "@param", "@return", "@see").

Adding and removing nodes from this list affects this node dynamically.

Returns:
  the live list of tag elements in this doc comment (element type: `TagElement`)
Since:
  3.0

### isMarkdown

public boolean isMarkdown()
Returns whether this javadoc is a markdown comment (added in JLS23 API).

Returns:
  `true` if this is a markdown comment, and `false` if this is a traditional javadoc comment.
Since:
  3.39
Restriction:
  preview feature

### setMarkdown

public void setMarkdown(boolean isMarkdown)
Sets whether this javadoc is a markdown comment (added in JLS23 API).

Parameters:
  `isMarkdown` - `true` if this is a markdown comment, and `false` if this is a traditional javadoc comment.
Since:
  3.39
Restriction:
  preview feature