Class JVMClass<T extends IClassLoader>

java.lang.Object
com.ibm.wala.classLoader.BytecodeClass<T>
com.ibm.wala.classLoader.JVMClass<T>
Type Parameters:
T - type of classloader which loads this format of class.
All Implemented Interfaces:
IClass, IClassHierarchyDweller
Direct Known Subclasses:
ShrikeClass

public abstract class JVMClass<T extends IClassLoader> extends BytecodeClass<T>
Note that classes from JVML have some features that are not present in all "bytecode" languages currently supported.
  • Field Details

    • modifiers

      protected int modifiers
      JVM-level modifiers; cached here for efficiency
  • Constructor Details

  • Method Details

    • getModifiers

      public int getModifiers()
      Description copied from interface: IClass
      Return the integer that encodes the class's modifiers, as defined by the JVM specification
      Returns:
      the integer that encodes the class's modifiers, as defined by the JVM specification
    • isPublic

      public boolean isPublic()
      Returns:
      true iff this class is public
    • isPrivate

      public boolean isPrivate()
      Returns:
      true iff this class is private
    • isInterface

      public boolean isInterface()
      Description copied from interface: IClass
      Is this class a Java interface?
    • isAbstract

      public boolean isAbstract()
      Returns:
      true iff this class is abstract
      See Also:
    • isSynthetic

      public boolean isSynthetic()
      Returns:
      true iff this class is synthetic, i.e., compiler-generated
      See Also:
    • getClassInitializer

      public IMethod getClassInitializer()
      Returns:
      the method that is this class's initializer, or null if none
      See Also: