Package javassist

Class CtMember

java.lang.Object
javassist.CtMember
Direct Known Subclasses:
CtBehavior, CtField

public abstract class CtMember extends Object
An instance of CtMember represents a field, a constructor, or a method.
  • Method Details

    • toString

      public String toString()
      Overrides:
      toString in class Object
    • getDeclaringClass

      public CtClass getDeclaringClass()
      Returns the class that declares this member.
    • visibleFrom

      public boolean visibleFrom(CtClass clazz)
      Returns true if this member is accessible from the given class.
    • getModifiers

      public abstract int getModifiers()
      Obtains the modifiers of the member.
      Returns:
      modifiers encoded with javassist.Modifier.
      See Also:
    • setModifiers

      public abstract void setModifiers(int mod)
      Sets the encoded modifiers of the member.
      See Also:
    • hasAnnotation

      public boolean hasAnnotation(Class<?> clz)
      Returns true if the class has the specified annotation type.
      Parameters:
      clz - the annotation type.
      Returns:
      true if the annotation is found, otherwise false.
      Since:
      3.11
    • hasAnnotation

      public abstract boolean hasAnnotation(String annotationTypeName)
      Returns true if the class has the specified annotation type.
      Parameters:
      annotationTypeName - the name of annotation type.
      Returns:
      true if the annotation is found, otherwise false.
      Since:
      3.21
    • getAnnotation

      public abstract Object getAnnotation(Class<?> annotationType) throws ClassNotFoundException
      Returns the annotation if the class has the specified annotation type. For example, if an annotation @Author is associated with this member, an Author object is returned. The member values can be obtained by calling methods on the Author object.
      Parameters:
      annotationType - the annotation type.
      Returns:
      the annotation if found, otherwise null.
      Throws:
      ClassNotFoundException
      Since:
      3.11
    • getAnnotations

      public abstract Object[] getAnnotations() throws ClassNotFoundException
      Returns the annotations associated with this member. For example, if an annotation @Author is associated with this member, the returned array contains an Author object. The member values can be obtained by calling methods on the Author object.
      Returns:
      an array of annotation-type objects.
      Throws:
      ClassNotFoundException
      See Also:
    • getAvailableAnnotations

      public abstract Object[] getAvailableAnnotations()
      Returns the annotations associated with this member. This method is equivalent to getAnnotations() except that, if any annotations are not on the classpath, they are not included in the returned array.
      Returns:
      an array of annotation-type objects.
      Since:
      3.3
      See Also:
    • getName

      public abstract String getName()
      Obtains the name of the member.

      As for constructor names, see getName() in CtConstructor.

      See Also:
    • getSignature

      public abstract String getSignature()
      Returns the character string representing the signature of the member. If two members have the same signature (parameter types etc.), getSignature() returns the same string.
    • getGenericSignature

      public abstract String getGenericSignature()
      Returns the generic signature of the member.
      Since:
      3.17
      See Also:
    • setGenericSignature

      public abstract void setGenericSignature(String sig)
      Sets the generic signature of the member.
      Parameters:
      sig - a new generic signature.
      Since:
      3.17
      See Also:
    • getAttribute

      public abstract byte[] getAttribute(String name)
      Obtains a user-defined attribute with the given name. If that attribute is not found in the class file, this method returns null.

      Note that an attribute is a data block specified by the class file format. See AttributeInfo.

      Parameters:
      name - attribute name
    • setAttribute

      public abstract void setAttribute(String name, byte[] data)
      Adds a user-defined attribute. The attribute is saved in the class file.

      Note that an attribute is a data block specified by the class file format. See AttributeInfo.

      Parameters:
      name - attribute name
      data - attribute value