mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-27 06:45:07 +02:00
8268250: Class.arrayType() for a 255-d array throws undocumented IllegalArgumentException
Reviewed-by: sundar, alanb
This commit is contained in:
parent
d0e11808fd
commit
4c7f8b49a4
2 changed files with 59 additions and 1 deletions
|
@ -4485,12 +4485,21 @@ public final class Class<T> implements java.io.Serializable,
|
|||
* Returns a {@code Class} for an array type whose component type
|
||||
* is described by this {@linkplain Class}.
|
||||
*
|
||||
* @throws UnsupportedOperationException if this component type is {@linkplain
|
||||
* Void#TYPE void} or if the number of dimensions of the resulting array
|
||||
* type would exceed 255.
|
||||
* @return a {@code Class} describing the array type
|
||||
* @jvms 4.3.2 Field Descriptors
|
||||
* @jvms 4.4.1 The {@code CONSTANT_Class_info} Structure
|
||||
* @since 12
|
||||
*/
|
||||
@Override
|
||||
public Class<?> arrayType() {
|
||||
return Array.newInstance(this, 0).getClass();
|
||||
try {
|
||||
return Array.newInstance(this, 0).getClass();
|
||||
} catch (IllegalArgumentException iae) {
|
||||
throw new UnsupportedOperationException(iae);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue