Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse JDT Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.eclipse.jdt.core.dom
Class BodyDeclaration

    java.lang.Object
      org.eclipse.jdt.core.dom.ASTNode
          org.eclipse.jdt.core.dom.BodyDeclaration

Direct Known Subclasses:
  AbstractTypeDeclaration, AnnotationTypeMemberDeclaration, EnumConstantDeclaration, FieldDeclaration, Initializer, MethodDeclaration

public abstract class BodyDeclaration
extends ASTNode

Abstract base class of all AST nodes that represent body declarations that may appear in the body of some kind of class or interface declaration, including anonymous class declarations, enumeration declarations, and enumeration constant declarations.

For JLS2:

     BodyDeclaration:
    		ClassDeclaration
    		InterfaceDeclaration
    		MethodDeclaration
     		ConstructorDeclaration
     		FieldDeclaration
     		Initializer

For JLS3, a number of new node types were introduced:

     BodyDeclaration:
    		ClassDeclaration
    		InterfaceDeclaration
    		EnumDeclaration
    		MethodDeclaration
     		ConstructorDeclaration
     		FieldDeclaration
     		Initializer
    		EnumConstantDeclaration
    		AnnotationTypeDeclaration
    		AnnotationTypeMemberDeclaration

All types of body declarations carry modifiers (and annotations), although they differ in which modifiers are allowed. Most types of body declarations can carry a doc comment; Initializer is the only ones that does not. The source range for body declarations always includes the doc comment if present.

Since:
  2.0

Field Summary

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, CAST_EXPRESSION, CATCH_CLAUSE, CHARACTER_LITERAL, CLASS_INSTANCE_CREATION, COMPILATION_UNIT, CONDITIONAL_EXPRESSION, CONSTRUCTOR_INVOCATION, CONTINUE_STATEMENT, DO_STATEMENT, EMPTY_STATEMENT, ENHANCED_FOR_STATEMENT, ENUM_CONSTANT_DECLARATION, ENUM_DECLARATION, EXPRESSION_STATEMENT, FIELD_ACCESS, FIELD_DECLARATION, FOR_STATEMENT, IF_STATEMENT, IMPORT_DECLARATION, INFIX_EXPRESSION, INITIALIZER, INSTANCEOF_EXPRESSION, JAVADOC, LABELED_STATEMENT, LINE_COMMENT, MALFORMED, MARKER_ANNOTATION, MEMBER_REF, MEMBER_VALUE_PAIR, METHOD_DECLARATION, METHOD_INVOCATION, METHOD_REF, METHOD_REF_PARAMETER, MODIFIER, NORMAL_ANNOTATION, NULL_LITERAL, NUMBER_LITERAL, ORIGINAL, PACKAGE_DECLARATION, PARAMETERIZED_TYPE, PARENTHESIZED_EXPRESSION, POSTFIX_EXPRESSION, PREFIX_EXPRESSION, PRIMITIVE_TYPE, PROTECT, QUALIFIED_NAME, QUALIFIED_TYPE, RETURN_STATEMENT, SIMPLE_NAME, SIMPLE_TYPE, SINGLE_MEMBER_ANNOTATION, SINGLE_VARIABLE_DECLARATION, STRING_LITERAL, SUPER_CONSTRUCTOR_INVOCATION, SUPER_FIELD_ACCESS, SUPER_METHOD_INVOCATION, SWITCH_CASE, SWITCH_STATEMENT, SYNCHRONIZED_STATEMENT, TAG_ELEMENT, TEXT_ELEMENT, THIS_EXPRESSION, THROW_STATEMENT, TRY_STATEMENT, TYPE_DECLARATION, TYPE_DECLARATION_STATEMENT, TYPE_LITERAL, TYPE_PARAMETER, VARIABLE_DECLARATION_EXPRESSION, VARIABLE_DECLARATION_FRAGMENT, VARIABLE_DECLARATION_STATEMENT, WHILE_STATEMENT, WILDCARD_TYPE`

Method Summary
`Javadoc` | `getJavadoc()` Returns the doc comment node.
`int` | `getModifiers()` Returns the modifiers explicitly specified on this declaration.
`List` | `modifiers()` Returns the live ordered list of modifiers and annotations of this declaration (added in JLS3 API).
`void` | `setJavadoc(Javadoc docComment)` Sets or clears the doc comment node.
`void` | `setModifiers(int modifiers)` Sets the modifiers explicitly specified on this declaration (JLS2 API only).

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, nodeClassForType, properties, setFlags, setProperty, setSourceRange, setStructuralProperty, structuralPropertiesForType, subtreeBytes, subtreeMatch, toString`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Method Detail

### getJavadoc

    public Javadoc getJavadoc()

  Returns the doc comment node.

  Returns:
    the doc comment node, or `null` if none

### setJavadoc

    public void setJavadoc(Javadoc docComment)

  Sets or clears the doc comment node.

  Parameters:
    `docComment` - the doc comment node, or `null` if none
  Throws:
    `IllegalArgumentException` - if the doc comment string is invalid

### getModifiers

    public int getModifiers()

  Returns the modifiers explicitly specified on this declaration.

  In the JLS3 API, this method is a convenience method that computes these flags from `modifiers()`.

  Returns:
    the bit-wise or of `Modifier` constants
  See Also:
    `Modifier`

### setModifiers

    public void setModifiers(int modifiers)

  Sets the modifiers explicitly specified on this declaration (JLS2 API only).

  Parameters:
    `modifiers` - the given modifiers (bit-wise or of `Modifier` constants)
  Throws:
    `UnsupportedOperationException` - if this operation is used in an AST later than JLS2
  See Also:
    `Modifier`

### modifiers

    public List modifiers()

  Returns the live ordered list of modifiers and annotations of this declaration (added in JLS3 API).

  Returns:
    the live list of modifiers and annotations (element type: `IExtendedModifier`)
  Throws:
    `UnsupportedOperationException` - if this operation is used in a JLS2 AST
  Since:
    3.0

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse JDT Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright (c) IBM Corp. and others 2000, 2004. All Rights Reserved.