Package com.google.gson.reflect
Class TypeToken<T>
java.lang.Object
com.google.gson.reflect.TypeToken<T>
Represents a generic type
T
. Java doesn't yet provide a way to
represent generic types, so this class does. Forces clients to create a
subclass of this class which enables retrieval the type information even at
runtime.
For example, to create a type literal for List<String>
, you can
create an empty anonymous inner class:
TypeToken<List<String>> list = new TypeToken<List<String>>() {};
This syntax cannot be used to create type literals that have wildcard
parameters, such as Class<?>
or List<? extends CharSequence>
.
- Author:
- Bob Lee, Sven Mawson, Jesse Wilson
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal boolean
static <T> TypeToken
<T> Gets type literal for the givenClass
instance.static TypeToken
<?> Gets type literal for the givenType
instance.static TypeToken
<?> Gets type literal for the array type whose elements are all instances ofcomponentType
.static TypeToken
<?> getParameterized
(Type rawType, Type... typeArguments) Gets type literal for the parameterized type represented by applyingtypeArguments
torawType
.Returns the raw (non-generic) type for this type.final Type
getType()
Gets underlyingType
instance.final int
hashCode()
boolean
isAssignableFrom
(TypeToken<?> token) Deprecated.this implementation may be inconsistent with javac for types with wildcards.boolean
isAssignableFrom
(Class<?> cls) Deprecated.this implementation may be inconsistent with javac for types with wildcards.boolean
isAssignableFrom
(Type from) Deprecated.this implementation may be inconsistent with javac for types with wildcards.final String
toString()
-
Constructor Details
-
TypeToken
protected TypeToken()Constructs a new type literal. Derives represented class from type parameter.Clients create an empty anonymous subclass. Doing so embeds the type parameter in the anonymous class's type hierarchy so we can reconstitute it at runtime despite erasure.
-
-
Method Details
-
getRawType
Returns the raw (non-generic) type for this type. -
getType
Gets underlyingType
instance. -
isAssignableFrom
Deprecated.this implementation may be inconsistent with javac for types with wildcards.Check if this type is assignable from the given class object. -
isAssignableFrom
Deprecated.this implementation may be inconsistent with javac for types with wildcards.Check if this type is assignable from the given Type. -
isAssignableFrom
Deprecated.this implementation may be inconsistent with javac for types with wildcards.Check if this type is assignable from the given type token. -
hashCode
public final int hashCode() -
equals
-
toString
-
get
Gets type literal for the givenType
instance. -
get
Gets type literal for the givenClass
instance. -
getParameterized
Gets type literal for the parameterized type represented by applyingtypeArguments
torawType
. -
getArray
Gets type literal for the array type whose elements are all instances ofcomponentType
.
-