程序包 proguard

类 ClassSpecification

  • 所有已实现的接口:
    java.lang.Cloneable
    直接已知子类:
    KeepClassSpecification

    public class ClassSpecification
    extends java.lang.Object
    implements java.lang.Cloneable
    This class stores a specification of classes and possibly class members. The specification is template-based: the class names and class member names and descriptors can contain wildcards. Classes can be specified explicitly, or as extensions or implementations in the class hierarchy.
    • 构造器概要

      构造器 
      构造器 说明
      ClassSpecification()
      Creates a new ClassSpecification for all possible classes, without comments or class members.
      ClassSpecification​(java.lang.String comments, int requiredSetAccessFlags, int requiredUnsetAccessFlags, java.lang.String annotationType, java.lang.String className, java.lang.String extendsAnnotationType, java.lang.String extendsClassName)
      Creates a new ClassSpecification for the specified class(es), without class members.
      ClassSpecification​(java.lang.String comments, int requiredSetAccessFlags, int requiredUnsetAccessFlags, java.lang.String annotationType, java.lang.String className, java.lang.String extendsAnnotationType, java.lang.String extendsClassName, java.util.List fieldSpecifications, java.util.List methodSpecifications)
      Creates a new ClassSpecification for the specified classes and class members.
      ClassSpecification​(ClassSpecification classSpecification)
      Creates a new ClassSpecification that is a copy of the given specification.
    • 方法概要

      所有方法 实例方法 具体方法 
      修饰符和类型 方法 说明
      void addField​(MemberSpecification fieldSpecification)
      Specifies to keep the specified field(s) of this option's class(es).
      void addMethod​(MemberSpecification methodSpecification)
      Specifies to keep the specified method(s) of this option's class(es).
      java.lang.Object clone()  
      boolean equals​(java.lang.Object object)  
      int hashCode()  
      • 从类继承的方法 java.lang.Object

        finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    • 字段详细资料

      • comments

        public final java.lang.String comments
      • memberComments

        public java.lang.String memberComments
      • requiredSetAccessFlags

        public int requiredSetAccessFlags
      • requiredUnsetAccessFlags

        public int requiredUnsetAccessFlags
      • annotationType

        public final java.lang.String annotationType
      • className

        public java.lang.String className
      • extendsAnnotationType

        public final java.lang.String extendsAnnotationType
      • extendsClassName

        public final java.lang.String extendsClassName
      • attributeNames

        public final java.util.List<java.lang.String> attributeNames
    • 构造器详细资料

      • ClassSpecification

        public ClassSpecification()
        Creates a new ClassSpecification for all possible classes, without comments or class members.
      • ClassSpecification

        public ClassSpecification​(ClassSpecification classSpecification)
        Creates a new ClassSpecification that is a copy of the given specification.
      • ClassSpecification

        public ClassSpecification​(java.lang.String comments,
                                  int requiredSetAccessFlags,
                                  int requiredUnsetAccessFlags,
                                  java.lang.String annotationType,
                                  java.lang.String className,
                                  java.lang.String extendsAnnotationType,
                                  java.lang.String extendsClassName)
        Creates a new ClassSpecification for the specified class(es), without class members.
        参数:
        comments - provides optional comments on this specification.
        requiredSetAccessFlags - the class access flags that must be set in order for the class to apply.
        requiredUnsetAccessFlags - the class access flags that must be unset in order for the class to apply.
        annotationType - the name of the class that must be an annotation of the class in order for it to apply. The name may be null to specify that no annotation is required.
        className - the class name. The name may be null to specify any class, or it may contain "**", "*", or "?" wildcards.
        extendsAnnotationType - the name of the class of that must be an annotation of the class that the class must extend or implement in order to apply. The name may be null to specify that no annotation is required.
        extendsClassName - the name of the class that the class must extend or implement in order to apply. The name may be null to specify any class.
      • ClassSpecification

        public ClassSpecification​(java.lang.String comments,
                                  int requiredSetAccessFlags,
                                  int requiredUnsetAccessFlags,
                                  java.lang.String annotationType,
                                  java.lang.String className,
                                  java.lang.String extendsAnnotationType,
                                  java.lang.String extendsClassName,
                                  java.util.List fieldSpecifications,
                                  java.util.List methodSpecifications)
        Creates a new ClassSpecification for the specified classes and class members.
        参数:
        comments - provides optional comments on this specification.
        requiredSetAccessFlags - the class access flags that must be set in order for the class to apply.
        requiredUnsetAccessFlags - the class access flags that must be unset in order for the class to apply.
        annotationType - the name of the class that must be an annotation of the class in order for it to apply. The name may be null to specify that no annotation is required.
        className - the class name. The name may be null to specify any class, or it may contain "**", "*", or "?" wildcards.
        extendsAnnotationType - the name of the class of that must be an annotation of the class that the class must extend or implement in order to apply. The name may be null to specify that no annotation is required.
        extendsClassName - the name of the class that the class must extend or implement in order to apply. The name may be null to specify any class.
        fieldSpecifications - the field specifications.
        methodSpecifications - the method specifications.
    • 方法详细资料

      • addField

        public void addField​(MemberSpecification fieldSpecification)
        Specifies to keep the specified field(s) of this option's class(es).
        参数:
        fieldSpecification - the field specification.
      • addMethod

        public void addMethod​(MemberSpecification methodSpecification)
        Specifies to keep the specified method(s) of this option's class(es).
        参数:
        methodSpecification - the method specification.
      • equals

        public boolean equals​(java.lang.Object object)
        覆盖:
        equals 在类中 java.lang.Object
      • hashCode

        public int hashCode()
        覆盖:
        hashCode 在类中 java.lang.Object
      • clone

        public java.lang.Object clone()
        覆盖:
        clone 在类中 java.lang.Object