RFR: 8371953: Document null handling in core reflection APIs [v3]

Alan Bateman alanb at openjdk.org
Mon Nov 17 16:47:07 UTC 2025


On Mon, 17 Nov 2025 16:35:33 GMT, Chen Liang <liach at openjdk.org> wrote:

>> A lot of core reflection APIs are from antique times, which have their own null handling behavior. Such behaviors are often not documented in the specification; we should document rejected null arguments and accepted null arguments (including array elements) explicitly.
>> 
>> In the investigation, I found `Class.isNestmateOf` (inconsistent) and `AnnotatedType`'s implementation of `AnnotatedElement` methods (required by specification) are missing null checks. I consider these unlikely to be a user dependency and added new null checks.
>
> Chen Liang has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 11 additional commits since the last revision:
> 
>  - From review
>  - Merge branch 'master' of https://github.com/openjdk/jdk into fix/core-reflection-null-checks
>  - Rephrase for parameterTypes contains null
>  - Rename tests to be more specific
>  - Split annotated type new checks to another patch
>  - Redundant
>  - Test and more fixes
>  - Copyright years
>  - Testing
>  - Merge branch 'master' of https://github.com/openjdk/jdk into fix/core-reflection-null-checks
>  - ... and 1 more: https://git.openjdk.org/jdk/compare/c1109dc0...51ef5789

Latest version looks good.

-------------

Marked as reviewed by alanb (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/28336#pullrequestreview-3473639319


More information about the core-libs-dev mailing list