JDK 14 record type representation in classfile format?

Luke Hutchison luke.hutch at gmail.com
Sat Mar 21 23:42:26 UTC 2020


In classes I have looked at in the past, if there is an InnerClasses class
attribute, then the listed inner class containment hierarchy always forms a
tree rooted at the defining class, and with the tree structure defined by
the outer_class_info and inner_class_info entries in the InnerClasses
attribute.

In this case, the outer_class_info is for MethodHandle, and MethodHandle is
not actually an inner class of the record class, so it seems strange that
the record class would list MethodHandle$Lookup as an inner class, rather
than the MethodHandle class listing MethodHandle$Lookup as an inner class.

(I admit I don't understand how bootstrap methods work at the deepest level
though, so maybe I'm missing something.)


More information about the amber-dev mailing list