Stay organized with collections
Save and categorize content based on your preferences.
ParameterizedType
interface ParameterizedType : Type
ParameterizedType represents a parameterized type such as Collection<String>.
A parameterized type is created the first time it is needed by a reflective method, as specified in this package. When a parameterized type p is created, the generic type declaration that p instantiates is resolved, and all type arguments of p are created recursively. See TypeVariable
for details on the creation process for type variables. Repeated creation of a parameterized type has no effect.
Instances of classes that implement this interface must implement an equals() method that equates any two instances that share the same generic type declaration and have equal type parameters.
Summary
Public methods |
abstract Array<Type!> |
Returns an array of Type objects representing the actual type arguments to this type.
|
abstract Type? |
Returns a Type object representing the type that this type is a member of.
|
abstract Type |
Returns the Type object representing the class or interface that declared this type.
|
Inherited functions |
From class Type
String |
getTypeName()
Returns a string describing this type, including information about any type parameters.
|
|
Public methods
getActualTypeArguments
abstract fun getActualTypeArguments(): Array<Type!>
Returns an array of Type
objects representing the actual type arguments to this type.
Note that in some cases, the returned array be empty. This can occur if this type represents a non-parameterized type nested within a parameterized type.
Return |
Array<Type!> |
an array of Type objects representing the actual type arguments to this type |
Exceptions |
java.lang.TypeNotPresentException |
if any of the actual type arguments refers to a non-existent type declaration |
java.lang.reflect.MalformedParameterizedTypeException |
if any of the actual type parameters refer to a parameterized type that cannot be instantiated for any reason |
getOwnerType
abstract fun getOwnerType(): Type?
Returns a Type
object representing the type that this type is a member of. For example, if this type is O<T>.I<S>
, return a representation of O<T>
.
If this type is a top-level type, null
is returned.
Return |
Type? |
a Type object representing the type that this type is a member of. If this type is a top-level type, null is returned |
Exceptions |
java.lang.TypeNotPresentException |
if the owner type refers to a non-existent type declaration |
java.lang.reflect.MalformedParameterizedTypeException |
if the owner type refers to a parameterized type that cannot be instantiated for any reason |
getRawType
abstract fun getRawType(): Type
Returns the Type
object representing the class or interface that declared this type.
Return |
Type |
the Type object representing the class or interface that declared this type |
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-02-10 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-02-10 UTC."],[],[],null,["# ParameterizedType\n\nAdded in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)\n\nParameterizedType\n=================\n\n```\ninterface ParameterizedType : Type\n```\n\n|------------------------------------------|\n| [java.lang.reflect.ParameterizedType](#) |\n\nParameterizedType represents a parameterized type such as Collection\\\u003cString\\\u003e.\n\nA parameterized type is created the first time it is needed by a reflective method, as specified in this package. When a parameterized type p is created, the generic type declaration that p instantiates is resolved, and all type arguments of p are created recursively. See [TypeVariable](/reference/kotlin/java/lang/reflect/TypeVariable) for details on the creation process for type variables. Repeated creation of a parameterized type has no effect.\n\nInstances of classes that implement this interface must implement an equals() method that equates any two instances that share the same generic type declaration and have equal type parameters.\n\nSummary\n-------\n\n| Public methods ||\n|----------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------|\n| abstract [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)\\\u003c[Type](/reference/kotlin/java/lang/reflect/Type)!\\\u003e | [getActualTypeArguments](#getActualTypeArguments())`()` Returns an array of `Type` objects representing the actual type arguments to this type. |\n| abstract [Type](/reference/kotlin/java/lang/reflect/Type)? | [getOwnerType](#getOwnerType())`()` Returns a `Type` object representing the type that this type is a member of. |\n| abstract [Type](/reference/kotlin/java/lang/reflect/Type) | [getRawType](#getRawType())`()` Returns the `Type` object representing the class or interface that declared this type. |\n\n| Inherited functions ||\n|---|---|\n| From class [Type](/reference/kotlin/java/lang/reflect/Type) |----------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | [getTypeName](/reference/kotlin/java/lang/reflect/Type#getTypeName())`()` Returns a string describing this type, including information about any type parameters. \u003cbr /\u003e | ||\n\nPublic methods\n--------------\n\n### getActualTypeArguments\n\nAdded in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels) \n\n```\nabstract fun getActualTypeArguments(): Array\u003cType!\u003e\n```\n\nReturns an array of `Type` objects representing the actual type arguments to this type.\n\nNote that in some cases, the returned array be empty. This can occur if this type represents a non-parameterized type nested within a parameterized type.\n\n| Return ||\n|-----------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------|\n| [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)\u003c[Type](/reference/kotlin/java/lang/reflect/Type)!\u003e | an array of `Type` objects representing the actual type arguments to this type |\n\n| Exceptions ||\n|---------------------------------------------------------|---------------------------------------------------------------------------------------------------------------|\n| `java.lang.TypeNotPresentException` | if any of the actual type arguments refers to a non-existent type declaration |\n| `java.lang.reflect.MalformedParameterizedTypeException` | if any of the actual type parameters refer to a parameterized type that cannot be instantiated for any reason |\n\n### getOwnerType\n\nAdded in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels) \n\n```\nabstract fun getOwnerType(): Type?\n```\n\nReturns a `Type` object representing the type that this type is a member of. For example, if this type is `O\u003cT\u003e.I\u003cS\u003e`, return a representation of `O\u003cT\u003e`.\n\nIf this type is a top-level type, `null` is returned.\n\n| Return ||\n|---------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------|\n| [Type](/reference/kotlin/java/lang/reflect/Type)? | a `Type` object representing the type that this type is a member of. If this type is a top-level type, `null` is returned |\n\n| Exceptions ||\n|---------------------------------------------------------|---------------------------------------------------------------------------------------------|\n| `java.lang.TypeNotPresentException` | if the owner type refers to a non-existent type declaration |\n| `java.lang.reflect.MalformedParameterizedTypeException` | if the owner type refers to a parameterized type that cannot be instantiated for any reason |\n\n### getRawType\n\nAdded in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels) \n\n```\nabstract fun getRawType(): Type\n```\n\nReturns the `Type` object representing the class or interface that declared this type.\n\n| Return ||\n|--------------------------------------------------|-------------------------------------------------------------------------------|\n| [Type](/reference/kotlin/java/lang/reflect/Type) | the `Type` object representing the class or interface that declared this type |"]]