Top Description Fields Constructors Methods
com.github.javaparser.ast.body

public Class ClassOrInterfaceDeclaration

extends TypeDeclaration<ClassOrInterfaceDeclaration>
implements NodeWithImplements<ClassOrInterfaceDeclaration>, NodeWithExtends<ClassOrInterfaceDeclaration>, NodeWithTypeParameters<ClassOrInterfaceDeclaration>, NodeWithAbstractModifier<ClassOrInterfaceDeclaration>, NodeWithFinalModifier<ClassOrInterfaceDeclaration>, Resolvable<ResolvedReferenceTypeDeclaration>
Class Inheritance
All Implemented Interfaces
com.github.javaparser.resolution.Resolvable, com.github.javaparser.ast.nodeTypes.modifiers.NodeWithFinalModifier, com.github.javaparser.ast.nodeTypes.NodeWithModifiers, com.github.javaparser.ast.nodeTypes.modifiers.NodeWithAbstractModifier, com.github.javaparser.ast.nodeTypes.NodeWithTypeParameters, com.github.javaparser.ast.nodeTypes.NodeWithExtends, com.github.javaparser.ast.nodeTypes.NodeWithImplements
Imports
com.github.javaparser.TokenRange, com.github.javaparser.ast.*, com.github.javaparser.ast.expr.AnnotationExpr, .SimpleName, com.github.javaparser.ast.nodeTypes.NodeWithExtends, .NodeWithImplements, .NodeWithTypeParameters, com.github.javaparser.ast.nodeTypes.modifiers.NodeWithAbstractModifier, .NodeWithFinalModifier, com.github.javaparser.ast.observer.ObservableProperty, com.github.javaparser.ast.stmt.LocalClassDeclarationStmt, com.github.javaparser.ast.type.ClassOrInterfaceType, .TypeParameter, com.github.javaparser.ast.visitor.CloneVisitor, .GenericVisitor, .VoidVisitor, com.github.javaparser.metamodel.ClassOrInterfaceDeclarationMetaModel, .JavaParserMetaModel, com.github.javaparser.resolution.Resolvable, com.github.javaparser.resolution.declarations.ResolvedReferenceTypeDeclaration, java.util.Optional, java.util.function.Consumer

A definition of a class or interface.
class X { ... }
Author
Julio Vilmar Gesser

Field Summary

Modifier and TypeField and Description
private NodeList<ClassOrInterfaceType>
private NodeList<ClassOrInterfaceType>
private boolean
private NodeList<TypeParameter>

Constructor Summary

AccessConstructor and Description
public
public
ClassOrInterfaceDeclaration(final NodeList<Modifier> modifiers, final boolean isInterface, final String name)

public
ClassOrInterfaceDeclaration(final NodeList<Modifier> modifiers, final NodeList<AnnotationExpr> annotations, final boolean isInterface, final SimpleName name, final NodeList<TypeParameter> typeParameters, final NodeList<ClassOrInterfaceType> extendedTypes, final NodeList<ClassOrInterfaceType> implementedTypes, final NodeList<BodyDeclaration<?>> members)

public
ClassOrInterfaceDeclaration(TokenRange tokenRange, NodeList<Modifier> modifiers, NodeList<AnnotationExpr> annotations, boolean isInterface, SimpleName name, NodeList<TypeParameter> typeParameters, NodeList<ClassOrInterfaceType> extendedTypes, NodeList<ClassOrInterfaceType> implementedTypes, NodeList<BodyDeclaration<?>> members)

This constructor is used by the parser and is considered private.

Method Summary

Modifier and TypeMethod and Description
public <R, A> R
accept(final GenericVisitor<R, A>
the visitor implementation
v
,
final A
the argument passed to the visitor (of type A)
arg
)

Implements com.github.javaparser.ast.visitor.Visitable.accept.

Accept method for visitor support.
public <A> void
accept(final VoidVisitor<A>
the visitor implementation
v
,
final A
any value relevant for the visitor (of type A)
arg
)

Implements com.github.javaparser.ast.visitor.Visitable.accept.

Accept method for visitor support.
public ClassOrInterfaceDeclaration
public ClassOrInterfaceDeclaration
clone()

Overrides com.github.javaparser.ast.body.TypeDeclaration.clone.

Creates and returns a copy of this object.
public NodeList<ClassOrInterfaceType>
public Optional<String>
getFullyQualifiedName()

Overrides com.github.javaparser.ast.body.TypeDeclaration.getFullyQualifiedName.

Returns the fully qualified name of this type, derived only from information available in this compilation unit.
public NodeList<ClassOrInterfaceType>
public ClassOrInterfaceDeclarationMetaModel
public NodeList<TypeParameter>
public void
public boolean
public boolean

Returns:

is this an inner class? NOTE: many people are confused over terminology. Refer to https://docs.oracle.com/javase/tutorial/java/javaOO/nested.html .
isInnerClass
()

public boolean
public boolean

Returns:

is this class's parent a LocalClassDeclarationStmt ?
isLocalClassDeclaration
()

public boolean
public boolean
public ResolvedReferenceTypeDeclaration
public ClassOrInterfaceDeclaration
public ClassOrInterfaceDeclaration
public ClassOrInterfaceDeclaration
setInterface(final boolean isInterface)

public ClassOrInterfaceDeclaration
public Optional<ClassOrInterfaceDeclaration>
Inherited from com.github.javaparser.ast.body.TypeDeclaration:
addMemberasTypeDeclarationgetCallablesWithSignaturegetMembersgetModifiersgetNameifTypeDeclarationisNestedTypeisTopLevelTypeisTypeDeclarationsetMemberssetModifierssetNametoTypeDeclaration

Field Detail

extendedTypesback to summary
private NodeList<ClassOrInterfaceType> extendedTypes
implementedTypesback to summary
private NodeList<ClassOrInterfaceType> implementedTypes
isInterfaceback to summary
private boolean isInterface
typeParametersback to summary
private NodeList<TypeParameter> typeParameters

Constructor Detail

ClassOrInterfaceDeclarationback to summary
public ClassOrInterfaceDeclaration()
ClassOrInterfaceDeclarationback to summary
public ClassOrInterfaceDeclaration(final NodeList<Modifier> modifiers, final boolean isInterface, final String name)
ClassOrInterfaceDeclarationback to summary
public ClassOrInterfaceDeclaration(final NodeList<Modifier> modifiers, final NodeList<AnnotationExpr> annotations, final boolean isInterface, final SimpleName name, final NodeList<TypeParameter> typeParameters, final NodeList<ClassOrInterfaceType> extendedTypes, final NodeList<ClassOrInterfaceType> implementedTypes, final NodeList<BodyDeclaration<?>> members)
Annotations
@AllFieldsConstructor
ClassOrInterfaceDeclarationback to summary
public ClassOrInterfaceDeclaration(TokenRange tokenRange, NodeList<Modifier> modifiers, NodeList<AnnotationExpr> annotations, boolean isInterface, SimpleName name, NodeList<TypeParameter> typeParameters, NodeList<ClassOrInterfaceType> extendedTypes, NodeList<ClassOrInterfaceType> implementedTypes, NodeList<BodyDeclaration<?>> members)

This constructor is used by the parser and is considered private.

Annotations
@Generated:com.github.javaparser.generator.core.node.MainConstructorGenerator

Method Detail

acceptback to summary
public <R, A> R accept(final GenericVisitor<R, A> v, final A arg)

Implements com.github.javaparser.ast.visitor.Visitable.accept.

Doc from com.github.javaparser.ast.visitor.Visitable.accept.

Accept method for visitor support.

Parameters
<R>
the type of the return value of the visitor
<A>
the type the user argument passed to the visitor
v:GenericVisitor<R, A>

the visitor implementation

arg:A

the argument passed to the visitor (of type A)

Returns:R

the result of the visit (of type R)

Annotations
@Override
@Generated:com.github.javaparser.generator.core.node.AcceptGenerator
acceptback to summary
public <A> void accept(final VoidVisitor<A> v, final A arg)

Implements com.github.javaparser.ast.visitor.Visitable.accept.

Doc from com.github.javaparser.ast.visitor.Visitable.accept.

Accept method for visitor support.

Parameters
<A>
the type the argument passed for the visitor
v:VoidVisitor<A>

the visitor implementation

arg:A

any value relevant for the visitor (of type A)

Annotations
@Override
@Generated:com.github.javaparser.generator.core.node.AcceptGenerator
asClassOrInterfaceDeclarationback to summary
public ClassOrInterfaceDeclaration asClassOrInterfaceDeclaration()

Overrides com.github.javaparser.ast.body.BodyDeclaration.asClassOrInterfaceDeclaration.

Annotations
@Override
@Generated:com.github.javaparser.generator.core.node.TypeCastingGenerator
cloneback to summary
public ClassOrInterfaceDeclaration clone()

Overrides com.github.javaparser.ast.body.TypeDeclaration.clone.

Doc from java.lang.Object.clone.

Creates and returns a copy of this object. The precise meaning of "copy" may depend on the class of the object. The general intent is that, for any object x, the expression:

x.clone() != x
will be true, and that the expression:
x.clone().getClass() == x.getClass()
will be true, but these are not absolute requirements. While it is typically the case that:
x.clone().equals(x)
will be true, this is not an absolute requirement.

By convention, the returned object should be obtained by calling super.clone. If a class and all of its superclasses (except Object) obey this convention, it will be the case that x.clone().getClass() == x.getClass().

By convention, the object returned by this method should be independent of this object (which is being cloned). To achieve this independence, it may be necessary to modify one or more fields of the object returned by super.clone before returning it. Typically, this means copying any mutable objects that comprise the internal "deep structure" of the object being cloned and replacing the references to these objects with references to the copies. If a class contains only primitive fields or references to immutable objects, then it is usually the case that no fields in the object returned by super.clone need to be modified.

Returns:ClassOrInterfaceDeclaration

a clone of this instance.

Annotations
@Override
@Generated:com.github.javaparser.generator.core.node.CloneGenerator
getExtendedTypesback to summary
public NodeList<ClassOrInterfaceType> getExtendedTypes()

Implements com.github.javaparser.ast.nodeTypes.NodeWithExtends.getExtendedTypes.

Annotations
@Generated:com.github.javaparser.generator.core.node.PropertyGenerator
getFullyQualifiedNameback to summary
public Optional<String> getFullyQualifiedName()

Overrides com.github.javaparser.ast.body.TypeDeclaration.getFullyQualifiedName.

Doc from com.github.javaparser.ast.body.TypeDeclaration.getFullyQualifiedName.

Returns the fully qualified name of this type, derived only from information available in this compilation unit. (So no symbol solving happens.) If the declared type is a local class declaration, it will return Optional.empty(). If the declared type is not contained in a compilation unit, it will return Optional.empty().

Annotations
@Override
getImplementedTypesback to summary
public NodeList<ClassOrInterfaceType> getImplementedTypes()

Implements com.github.javaparser.ast.nodeTypes.NodeWithImplements.getImplementedTypes.

Annotations
@Generated:com.github.javaparser.generator.core.node.PropertyGenerator
getMetaModelback to summary
public ClassOrInterfaceDeclarationMetaModel getMetaModel()

Overrides com.github.javaparser.ast.body.TypeDeclaration.getMetaModel.

Returns:ClassOrInterfaceDeclarationMetaModel

Doc from com.github.javaparser.ast.Node.getMetaModel.

get JavaParser specific node introspection information.

Annotations
@Override
@Generated:com.github.javaparser.generator.core.node.GetMetaModelGenerator
getTypeParametersback to summary
public NodeList<TypeParameter> getTypeParameters()

Implements com.github.javaparser.ast.nodeTypes.NodeWithTypeParameters.getTypeParameters.

Annotations
@Generated:com.github.javaparser.generator.core.node.PropertyGenerator
ifClassOrInterfaceDeclarationback to summary
public void ifClassOrInterfaceDeclaration(Consumer<ClassOrInterfaceDeclaration> action)

Overrides com.github.javaparser.ast.body.BodyDeclaration.ifClassOrInterfaceDeclaration.

Annotations
@Generated:com.github.javaparser.generator.core.node.TypeCastingGenerator
isClassOrInterfaceDeclarationback to summary
public boolean isClassOrInterfaceDeclaration()

Overrides com.github.javaparser.ast.body.BodyDeclaration.isClassOrInterfaceDeclaration.

Annotations
@Override
@Generated:com.github.javaparser.generator.core.node.TypeCastingGenerator
isInnerClassback to summary
public boolean isInnerClass()
Returns:boolean

is this an inner class? NOTE: many people are confused over terminology. Refer to https://docs.oracle.com/javase/tutorial/java/javaOO/nested.html .

isInterfaceback to summary
public boolean isInterface()
Annotations
@Generated:com.github.javaparser.generator.core.node.PropertyGenerator
isLocalClassDeclarationback to summary
public boolean isLocalClassDeclaration()
Returns:boolean

is this class's parent a LocalClassDeclarationStmt ?

removeback to summary
public boolean remove(Node node)

Overrides com.github.javaparser.ast.body.TypeDeclaration.remove.

Annotations
@Override
@Generated:com.github.javaparser.generator.core.node.RemoveMethodGenerator
replaceback to summary
public boolean replace(Node node, Node replacementNode)

Overrides com.github.javaparser.ast.body.TypeDeclaration.replace.

Annotations
@Override
@Generated:com.github.javaparser.generator.core.node.ReplaceMethodGenerator
resolveback to summary
public ResolvedReferenceTypeDeclaration resolve()

Implements abstract com.github.javaparser.ast.body.TypeDeclaration.resolve.

Implements com.github.javaparser.resolution.Resolvable.resolve.

Annotations
@Override
setExtendedTypesback to summary
public ClassOrInterfaceDeclaration setExtendedTypes(final NodeList<ClassOrInterfaceType> extendedTypes)

Implements com.github.javaparser.ast.nodeTypes.NodeWithExtends.setExtendedTypes.

Annotations
@Generated:com.github.javaparser.generator.core.node.PropertyGenerator
setImplementedTypesback to summary
public ClassOrInterfaceDeclaration setImplementedTypes(final NodeList<ClassOrInterfaceType> implementedTypes)

Implements com.github.javaparser.ast.nodeTypes.NodeWithImplements.setImplementedTypes.

Annotations
@Generated:com.github.javaparser.generator.core.node.PropertyGenerator
setInterfaceback to summary
public ClassOrInterfaceDeclaration setInterface(final boolean isInterface)
Annotations
@Generated:com.github.javaparser.generator.core.node.PropertyGenerator
setTypeParametersback to summary
public ClassOrInterfaceDeclaration setTypeParameters(final NodeList<TypeParameter> typeParameters)

Implements com.github.javaparser.ast.nodeTypes.NodeWithTypeParameters.setTypeParameters.

Annotations
@Generated:com.github.javaparser.generator.core.node.PropertyGenerator
toClassOrInterfaceDeclarationback to summary
public Optional<ClassOrInterfaceDeclaration> toClassOrInterfaceDeclaration()

Overrides com.github.javaparser.ast.body.BodyDeclaration.toClassOrInterfaceDeclaration.

Annotations
@Override
@Generated:com.github.javaparser.generator.core.node.TypeCastingGenerator