| java.lang.Object | |
| ↳ | java.lang.Class<T> | 
The in-memory representation of a Java class. This representation serves as
 the starting point for querying class-related information, a process usually
 called "reflection". There are basically three types of Class
 instances: those representing real classes and interfaces, those representing
 primitive types, and those representing array classes.
 
 These represent an ordinary class or interface as found in the class
 hierarchy. The name associated with these Class instances is simply
 the fully qualified class name of the class or interface that it represents.
 In addition to this human-readable name, each class is also associated by a
 so-called signature, which is the letter "L", followed by the
 class name and a semicolon (";"). The signature is what the runtime system
 uses internally for identifying the class (for example in a DEX file).
 
 These represent the standard Java primitive types and hence share their
 names (for example "int" for the int primitive type). Although it is
 not possible to create new instances based on these Class instances,
 they are still useful for providing reflection information, and as the
 component type of array classes. There is one Class instance for each
 primitive type, and their signatures are:
 
B representing the byte primitive typeS representing the short primitive typeI representing the int primitive typeJ representing the long primitive typeF representing the float primitive typeD representing the double primitive typeC representing the char primitive typeZ representing the boolean primitive typeV representing void function return values
 These represent the classes of Java arrays. There is one such Class
 instance per combination of array leaf component type and arity (number of
 dimensions). In this case, the name associated with the Class
 consists of one or more left square brackets (one per dimension in the array)
 followed by the signature of the class representing the leaf component type,
 which can be either an object type or a primitive type. The signature of a
 Class representing an array type is the same as its name. Examples
 of array class signatures are:
 
[I representing the int[] type[Ljava/lang/String; representing the String[] type[[[C representing the char[][][] type (three dimensions!)| Public Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
Casts this  
  
  Class to represent a subclass of the specified class. | |||||||||||
Casts the specified object to the type represented by this  
  
  Class. | |||||||||||
Returns the assertion status for the class represented by this  
  
  Class. | |||||||||||
Returns a  
  
  Class object which represents the class with the
 specified name. | |||||||||||
Returns a  
  
  Class object which represents the class with the
 specified name. | |||||||||||
Returns all the annotations of this class. 
  
   | |||||||||||
Returns the canonical name of this class. 
  
   | |||||||||||
Returns the class loader which was used to load the class represented by
 this  
  
  Class. | |||||||||||
Returns an array containing  
  
  Class objects for all public classes
 and interfaces that are members of this class. | |||||||||||
Returns a  
  
  Class object which represents the component type if
 this class represents an array type. | |||||||||||
Returns a  
  
  Constructor object which represents the public
 constructor matching the specified parameter types. | |||||||||||
Returns an array containing  
  
  Constructor objects for all public
 constructors for the class represented by this Class. | |||||||||||
Returns the annotations that are directly defined on the class
 represented by this  
  
  Class. | |||||||||||
Returns an array containing  
  
  Class objects for all classes and
 interfaces that are declared as members of the class which this Class represents. | |||||||||||
Returns a  
  
  Constructor object which represents the constructor
 matching the specified parameter types that is declared by the class
 represented by this Class. | |||||||||||
Returns an array containing  
  
  Constructor objects for all
 constructors declared in the class represented by this Class. | |||||||||||
Returns a  
  
  Field object for the field with the specified name
 which is declared in the class represented by this Class. | |||||||||||
Returns an array containing  
  
  Field objects for all fields declared
 in the class represented by this Class. | |||||||||||
Returns a  
  
  Method object which represents the method matching the
 specified name and parameter types that is declared by the class
 represented by this Class. | |||||||||||
Returns an array containing  
  
  Method objects for all methods
 declared in the class represented by this Class. | |||||||||||
Returns the declaring  
  
  Class of this Class. | |||||||||||
Returns the enclosing  
  
  Class of this Class. | |||||||||||
Gets the enclosing  
  
  Constructor of this Class, if it is an
 anonymous or local/automatic class; otherwise null. | |||||||||||
Gets the enclosing  
  
  Method of this Class, if it is an
 anonymous or local/automatic class; otherwise null. | |||||||||||
Gets the  
  
  enum constants associated with this Class. | |||||||||||
Returns a  
  
  Field object which represents the public field with the
 specified name. | |||||||||||
Returns an array containing  
  
  Field objects for all public fields
 for the class C represented by this Class. | |||||||||||
Gets the  
  
  Types of the interfaces that this Class directly
 implements. | |||||||||||
Gets the  
  
  Type that represents the superclass of this class. | |||||||||||
Returns an array of  
  
  Class objects that match the interfaces
 specified in the implements declaration of the class represented
 by this Class. | |||||||||||
Returns a  
  
  Method object which represents the public method with
 the specified name and parameter types. | |||||||||||
Returns an array containing  
  
  Method objects for all public methods
 for the class C represented by this Class. | |||||||||||
Returns an integer that represents the modifiers of the class represented
 by this  
  
  Class. | |||||||||||
Returns the name of the class represented by this  
  
  Class. | |||||||||||
Returns the  
  
  Package of which the class represented by this
 Class is a member. | |||||||||||
Returns null. 
  
   | |||||||||||
Returns the URL of the resource specified by  
  
  resName. | |||||||||||
Returns a read-only stream for the contents of the resource specified by
  
  
  resName. | |||||||||||
Returns null. 
  
   | |||||||||||
Returns the simple name of the class represented by this  
  
  Class as
 defined in the source code. | |||||||||||
Returns the  
  
  Class object which represents the superclass of the
 class represented by this Class. | |||||||||||
Returns an array containing  
  
  TypeVariable objects for type
 variables declared by the generic class represented by this Class. | |||||||||||
Indicates whether this  
  
  Class represents an annotation class. | |||||||||||
Indicates whether or not this element has an annotation with the
 specified annotation type (including inherited annotations). 
  
   | |||||||||||
Indicates whether the class represented by this  
  
  Class is
 anonymously declared. | |||||||||||
Indicates whether the class represented by this  
  
  Class is an array
 class. | |||||||||||
Indicates whether the specified class type can be converted to the class
 represented by this  
  
  Class. | |||||||||||
Indicates whether the class represented by this  
  
  Class is an
 enum. | |||||||||||
Indicates whether the specified object can be cast to the class
 represented by this  
  
  Class. | |||||||||||
Indicates whether this  
  
  Class represents an interface. | |||||||||||
Indicates whether the class represented by this  
  
  Class is defined
 locally. | |||||||||||
Indicates whether the class represented by this  
  
  Class is a member
 class. | |||||||||||
Indicates whether this  
  
  Class represents a primitive type. | |||||||||||
Indicates whether this  
  
  Class represents a synthetic type. | |||||||||||
Returns a new instance of the class represented by this  
  
  Class,
 created by invoking the default (that is, zero-argument) constructor. | |||||||||||
Returns a string containing a concise, human-readable description of this
 object. 
  
   | |||||||||||
| 
  [Expand]
   Inherited Methods  | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
   
From class
  java.lang.Object
 | |||||||||||
   
From interface
  java.lang.reflect.AnnotatedElement
 | |||||||||||
   
From interface
  java.lang.reflect.GenericDeclaration
 | |||||||||||
Casts this Class to represent a subclass of the specified class.
 If successful, this Class is returned; otherwise a ClassCastException is thrown.
| clazz | the required type. | 
|---|
Class cast as a subclass of the given type.| ClassCastException | if this Class cannot be cast to the specified type.
 | 
        
|---|
Casts the specified object to the type represented by this Class.
 If the object is null then the result is also null.
| obj | the object to cast. | 
|---|
| ClassCastException | if the object cannot be cast to the specified type. | 
|---|
Returns the assertion status for the class represented by this Class. Assertion is enabled / disabled based on the class loader,
 package or class default at runtime.
Class.
Returns a Class object which represents the class with the
 specified name. The name should be the name of a class as described in
 the class definition, however Classes representing
 primitive types can not be found using this method. Security rules will
 be obeyed.
 
If the class has not been loaded so far, it is being loaded and linked first. This is done through either the specified class loader or one of its parent class loaders. The caller can also request the class to be initialized, which means that a possible static initializer block is executed.
| className | the name of the non-primitive-type class to find. | 
|---|---|
| initializeBoolean | indicates whether the class should be initialized. | 
| classLoader | the class loader to use to load the class. | 
Class instance.| ClassNotFoundException | if the requested class can not be found. | 
|---|---|
| LinkageError | if an error occurs during linkage | 
| ExceptionInInitializerError | if an exception occurs during static initialization of a class. | 
Returns a Class object which represents the class with the
 specified name. The name should be the name of a class as described in
 the class definition; however, Classes representing
 primitive types can not be found using this method.
 
If the class has not been loaded so far, it is being loaded and linked first. This is done through either the class loader of the calling class or one of its parent class loaders. The class is also being initialized, which means that a possible static initializer block is executed.
| className | the name of the non-primitive-type class to find. | 
|---|
Class instance.| ClassNotFoundException | if the requested class can not be found. | 
|---|---|
| LinkageError | if an error occurs during linkage | 
| ExceptionInInitializerError | if an exception occurs during static initialization of a class. | 
Returns all the annotations of this class. If there are no annotations then an empty array is returned.
Returns the canonical name of this class. If this class does not have a
 canonical name as defined in the Java Language Specification, then the
 method returns null.
null if it does not have a
         canonical name.
Returns the class loader which was used to load the class represented by
 this Class. Implementations are free to return null for
 classes that were loaded by the bootstrap class loader. The Android
 reference implementation, though, returns a reference to an actual
 representation of the bootstrap class loader.
Returns an array containing Class objects for all public classes
 and interfaces that are members of this class. This includes public
 members inherited from super classes and interfaces. If there are no such
 class members or if this object represents a primitive type then an array
 of length 0 is returned.
Returns a Class object which represents the component type if
 this class represents an array type. Returns null if this class
 does not represent an array type. The component type of an array type is
 the type of the elements of the array.
Returns a Constructor object which represents the public
 constructor matching the specified parameter types.
| parameterTypes | the parameter types of the requested constructor.
            (Class[]) null is equivalent to the empty array. | 
        
|---|
parameterTypes.| NoSuchMethodException | if the constructor can not be found. | 
|---|
Returns an array containing Constructor objects for all public
 constructors for the class represented by this Class. If there
 are no public constructors or if this Class represents an array
 class, a primitive type or void then an empty array is returned.
Class.Returns the annotations that are directly defined on the class
 represented by this Class. Annotations that are inherited are not
 included in the result. If there are no annotations at all, an empty
 array is returned.
Class represents.Returns an array containing Class objects for all classes and
 interfaces that are declared as members of the class which this Class represents. If there are no classes or interfaces declared or if
 this class represents an array class, a primitive type or void, then an
 empty array is returned.
Class objects for all the classes and
         interfaces that are used in member declarations.
Returns a Constructor object which represents the constructor
 matching the specified parameter types that is declared by the class
 represented by this Class.
| parameterTypes | the parameter types of the requested constructor.
            (Class[]) null is equivalent to the empty array. | 
        
|---|
parameterTypes.| NoSuchMethodException | if the requested constructor can not be found. | 
|---|
Returns an array containing Constructor objects for all
 constructors declared in the class represented by this Class. If
 there are no constructors or if this Class represents an array
 class, a primitive type or void then an empty array is returned.
Class.Returns a Field object for the field with the specified name
 which is declared in the class represented by this Class.
| name | the name of the requested field. | 
|---|
| NoSuchFieldException | if the requested field can not be found. | 
|---|
Returns an array containing Field objects for all fields declared
 in the class represented by this Class. If there are no fields or
 if this Class represents an array class, a primitive type or void
 then an empty array is returned.
Returns a Method object which represents the method matching the
 specified name and parameter types that is declared by the class
 represented by this Class.
| name | the requested method's name. | 
|---|---|
| parameterTypes | the parameter types of the requested method.
            (Class[]) null is equivalent to the empty array. | 
        
name and parameterTypes.| NoSuchMethodException | if the requested constructor can not be found. | 
|---|---|
| NullPointerException | if name is null. | 
        
Returns an array containing Method objects for all methods
 declared in the class represented by this Class. If there are no
 methods or if this Class represents an array class, a primitive
 type or void then an empty array is returned.
Class.Returns the declaring Class of this Class. Returns
 null if the class is not a member of another class or if this
 Class represents an array class, a primitive type or void.
Class or null.
Returns the enclosing Class of this Class. If there is no
 enclosing class the method returns null.
Class or null.
Gets the enclosing Constructor of this Class, if it is an
 anonymous or local/automatic class; otherwise null.
Constructor instance or null.
Gets the enclosing Method of this Class, if it is an
 anonymous or local/automatic class; otherwise null.
Method instance or null.
Gets the enum constants associated with this Class.
 Returns null if this Class does not represent an enum type.
enum constants or null.
Returns a Field object which represents the public field with the
 specified name. This method first searches the class C represented by
 this Class, then the interfaces implemented by C and finally the
 superclasses of C.
| name | the name of the requested field. | 
|---|
name.| NoSuchFieldException | if the field can not be found. | 
|---|
Returns an array containing Field objects for all public fields
 for the class C represented by this Class. Fields may be declared
 in C, the interfaces it implements or in the superclasses of C. The
 elements in the returned array are in no particular order.
 
If there are no public fields or if this class represents an array class,
 a primitive type or void then an empty array is returned.
Class.Gets the Type that represents the superclass of this class.
Type representing the superclass.
Returns an array of Class objects that match the interfaces
 specified in the implements declaration of the class represented
 by this Class. The order of the elements in the array is
 identical to the order in the original class declaration. If the class
 does not implement any interfaces, an empty array is returned.
Returns a Method object which represents the public method with
 the specified name and parameter types. This method first searches the
 class C represented by this Class, then the superclasses of C and
 finally the interfaces implemented by C and finally the superclasses of C
 for a method with matching name.
| name | the requested method's name. | 
|---|---|
| parameterTypes | the parameter types of the requested method.
            (Class[]) null is equivalent to the empty array. | 
        
name.| NoSuchMethodException | if the method can not be found. | 
|---|
Returns an array containing Method objects for all public methods
 for the class C represented by this Class. Methods may be
 declared in C, the interfaces it implements or in the superclasses of C.
 The elements in the returned array are in no particular order.
 
 If there are no public methods or if this Class represents a
 primitive type or void then an empty array is returned.
 
Class.Returns an integer that represents the modifiers of the class represented
 by this Class. The returned value is a combination of bits
 defined by constants in the Modifier class.
Class.
Returns the name of the class represented by this Class. For a
 description of the format which is used, see the class definition of
 Class.
Class.
Returns the Package of which the class represented by this
 Class is a member. Returns null if no Package
 object was created by the class loader of the class.
Package of which this Class is a
         member or null.
Returns the URL of the resource specified by resName. The mapping
 between the resource name and the URL is managed by the class' class
 loader.
| resName | the name of the resource. | 
|---|
URL object or null if
         the resource can not be found.Returns a read-only stream for the contents of the resource specified by
 resName. The mapping between the resource name and the stream is
 managed by the class' class loader.
| resName | the name of the resource. | 
|---|
null if no
         resource with the specified name can be found.Returns null. (On Android, a ClassLoader can load classes from multiple dex files.
 All classes from any given dex file will have the same signers, but different dex
 files may have different signers. This does not fit well with the original
 ClassLoader-based model of getSigners.)
Returns the simple name of the class represented by this Class as
 defined in the source code. If there is no name (that is, the class is
 anonymous) then an empty string is returned. If the receiver is an array
 then the name of the underlying type with square braces appended (for
 example "Integer[]") is returned.
Class.
Returns the Class object which represents the superclass of the
 class represented by this Class. If this Class represents
 the Object class, a primitive type, an interface or void then the
 method returns null. If this Class represents an array
 class then the Object class is returned.
Class.
Returns an array containing TypeVariable objects for type
 variables declared by the generic class represented by this Class. Returns an empty array if the class is not generic.
Indicates whether this Class represents an annotation class.
true if this Class represents an annotation
         class; false otherwise.
Indicates whether or not this element has an annotation with the specified annotation type (including inherited annotations).
| annotationType | the type of the annotation to search for | 
|---|
true if the annotation exists, false otherwiseIndicates whether the class represented by this Class is
 anonymously declared.
true if the class represented by this Class is
         anonymous; false otherwise.
Indicates whether the class represented by this Class is an array
 class.
true if the class represented by this Class is an
         array class; false otherwise.
Indicates whether the specified class type can be converted to the class
 represented by this Class. Conversion may be done via an identity
 conversion or a widening reference conversion (if either the receiver or
 the argument represent primitive types, only the identity conversion
 applies).
| cls | the class to check. | 
|---|
true if cls can be converted to the class
         represented by this Class; false otherwise.| NullPointerException | if cls is null.
 | 
        
|---|
Indicates whether the class represented by this Class is an
 enum.
true if the class represented by this Class is an
         enum; false otherwise.
Indicates whether the specified object can be cast to the class
 represented by this Class. This is the runtime version of the
 instanceof operator.
| object | the object to check. | 
|---|
true if object can be cast to the type
         represented by this Class; false if object is null or cannot be cast.
Indicates whether this Class represents an interface.
true if this Class represents an interface;
         false otherwise.
Indicates whether the class represented by this Class is defined
 locally.
true if the class represented by this Class is
         defined locally; false otherwise.
Indicates whether the class represented by this Class is a member
 class.
true if the class represented by this Class is a
         member class; false otherwise.
Indicates whether this Class represents a primitive type.
true if this Class represents a primitive type;
         false otherwise.
Indicates whether this Class represents a synthetic type.
true if this Class represents a synthetic type;
         false otherwise.
Returns a new instance of the class represented by this Class,
 created by invoking the default (that is, zero-argument) constructor. If
 there is no such constructor, or if the creation fails (either because of
 a lack of available memory or because an exception is thrown by the
 constructor), an InstantiationException is thrown. If the default
 constructor exists but is not accessible from the context where this
 method is invoked, an IllegalAccessException is thrown.
Class.| IllegalAccessException | if the default constructor is not visible. | 
|---|---|
| InstantiationException | if the instance can not be created. | 
Returns a string containing a concise, human-readable description of this object. Subclasses are encouraged to override this method and provide an implementation that takes into account the object's type and data. The default implementation is equivalent to the following expression:
getClass().getName() + '@' + Integer.toHexString(hashCode())
See Writing a useful
 toString method
 if you intend implementing your own toString method.