Package org.springframework.core
Class ParameterizedTypeReference<T>
java.lang.Object
org.springframework.core.ParameterizedTypeReference<T>
- Type Parameters:
T
- the referenced type
The purpose of this class is to enable capturing and passing a generic
Type
. In order to capture the generic type and retain it at runtime,
you need to create a subclass (ideally as anonymous inline class) as follows:
ParameterizedTypeReference<List<String>> typeRef = new ParameterizedTypeReference<List<String>>() {};
The resulting typeRef
instance can then be used to obtain a Type
instance that carries the captured parameterized type information at runtime.
For more information on "super type tokens" see the link to Neal Gafter's blog post.
- Since:
- 3.2
- Author:
- Arjen Poutsma, Rossen Stoyanchev
- See Also:
-
Constructor Summary
-
Method Summary
-
Constructor Details
-
ParameterizedTypeReference
protected ParameterizedTypeReference()
-
-
Method Details
-
getType
-
equals
-
hashCode
public int hashCode() -
toString
-
forType
Build aParameterizedTypeReference
wrapping the given type.- Parameters:
type
- a generic type (possibly obtained via reflection, e.g. fromMethod.getGenericReturnType()
)- Returns:
- a corresponding reference which may be passed into
ParameterizedTypeReference
-accepting methods - Since:
- 4.3.12
-