public interface

IJavaClass

implements IJavaDecompilableElement
com.pnfsoftware.jeb.core.units.code.java.IJavaClass

Class Overview

Java AST interface to represent a Java class or interface. Class elements contain other classes (inner classes), fields, and methods.

Summary

[Expand]
Inherited Constants
From interface com.pnfsoftware.jeb.core.units.code.java.IJavaElement
Public Methods
abstract boolean addImport(String simplename, String signature)
Register a class to be imported in the namespace.
abstract IJavaClass duplicate()
Duplicate this element.
abstract void generate(JavaOutputSink out, List<IJavaExpression> newArgs, int anonStart, boolean bodyOnly)
abstract int getAccessFlags()
abstract List<IJavaAnnotation> getAnnotations()
Get the annotations for this type.
abstract List<String> getAnonymousClassSignatures()
abstract List<IJavaClass> getAnonymousClasses()
abstract List<String> getFieldSignatures()
abstract List<IJavaField> getFields()
This convenience method is used to retrieve the list of fields.
abstract List<IJavaType> getImplementedInterfaces()
Get the implemented or extended interface types.
abstract String getImport(String simplename)
Get an imported class signature from its simple name.
abstract List<String> getInnerClassSignatures()
abstract List<IJavaClass> getInnerClasses()
This convenience method is used to retrieve the list of inner classes.
abstract List<IJavaMethod> getMethods()
This convenience method is used to retrieve the list of methods.
abstract List<String> getMethodsSignatures()
abstract String getName()
Get the type name.
abstract String getSignature()
Get this element's signature.
abstract IJavaType getSupertype()
Get the super type.
abstract IJavaType getType()
Get the class or interface type.
abstract boolean isAnnotation()
abstract boolean isAnonymous()
abstract boolean isEnumeration()
abstract boolean isInner()
abstract boolean isInterface()
abstract boolean isStatic()
abstract boolean isSynthetic()
[Expand]
Inherited Methods
From interface com.pnfsoftware.jeb.core.units.code.java.IJavaDecompilableElement
From interface com.pnfsoftware.jeb.core.units.code.java.IJavaElement

Public Methods

public abstract boolean addImport (String simplename, String signature)

Register a class to be imported in the namespace.

Parameters
simplename simple class name
signature FQSS class signature

public abstract IJavaClass duplicate ()

Duplicate this element.

Returns
  • a (possibly) duplicated object of the same type

public abstract void generate (JavaOutputSink out, List<IJavaExpression> newArgs, int anonStart, boolean bodyOnly)

public abstract int getAccessFlags ()

public abstract List<IJavaAnnotation> getAnnotations ()

Get the annotations for this type.

public abstract List<String> getAnonymousClassSignatures ()

public abstract List<IJavaClass> getAnonymousClasses ()

public abstract List<String> getFieldSignatures ()

public abstract List<IJavaField> getFields ()

This convenience method is used to retrieve the list of fields.

Returns
  • the list of fields

public abstract List<IJavaType> getImplementedInterfaces ()

Get the implemented or extended interface types.

public abstract String getImport (String simplename)

Get an imported class signature from its simple name.

Parameters
simplename simple class name
Returns
  • FQSS class signature

public abstract List<String> getInnerClassSignatures ()

public abstract List<IJavaClass> getInnerClasses ()

This convenience method is used to retrieve the list of inner classes.

Returns
  • the list of inner classes

public abstract List<IJavaMethod> getMethods ()

This convenience method is used to retrieve the list of methods.

Returns
  • the list of methods

public abstract List<String> getMethodsSignatures ()

public abstract String getName ()

Get the type name. The name is a fully-qualified Java name, such as: Lcom/foo/Bar;

Returns
  • the class name

public abstract String getSignature ()

Get this element's signature.

public abstract IJavaType getSupertype ()

Get the super type.

public abstract IJavaType getType ()

Get the class or interface type.

Returns
  • the type

public abstract boolean isAnnotation ()

public abstract boolean isAnonymous ()

public abstract boolean isEnumeration ()

public abstract boolean isInner ()

public abstract boolean isInterface ()

public abstract boolean isStatic ()

public abstract boolean isSynthetic ()