Co-Authored-By: Claude Sonnet 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_017ic4b4VQVEJWetTT1dYzyJ
31 lines
2.1 KiB
Plaintext
31 lines
2.1 KiB
Plaintext
$ javap -public java.lang.classfile.** on each JDK, then diff by class (24: OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12), 26: OpenJDK Runtime Environment Temurin-26.0.2.1+1 (build 26.0.2.1+1))
|
|
|
|
=== JDK 24 -> JDK 25 ===
|
|
+ java.lang.classfile.ClassFile: public static final int JAVA_25_VERSION;
|
|
~ java.lang.classfile.attribute.UnknownAttribute
|
|
was: public interface java.lang.classfile.attribute.UnknownAttribute extends java.lang.classfile.Attribute<java.lang.classfile.attribute.UnknownAttribute>, java.lang.classfile.ClassElement, java.lang.classfile.MethodElement, java.lang.classfile.FieldElement {
|
|
now: public interface java.lang.classfile.attribute.UnknownAttribute extends java.lang.classfile.Attribute<java.lang.classfile.attribute.UnknownAttribute>, java.lang.classfile.ClassElement, java.lang.classfile.MethodElement, java.lang.classfile.FieldElement, java.lang.classfile.CodeElement {
|
|
+ java.lang.classfile.constantpool.ClassEntry: public abstract boolean matches(java.lang.constant.ClassDesc);
|
|
+ java.lang.classfile.constantpool.MethodTypeEntry: public abstract boolean matches(java.lang.constant.MethodTypeDesc);
|
|
+ java.lang.classfile.constantpool.ModuleEntry: public abstract boolean matches(java.lang.constant.ModuleDesc);
|
|
+ java.lang.classfile.constantpool.PackageEntry: public abstract boolean matches(java.lang.constant.PackageDesc);
|
|
+ java.lang.classfile.constantpool.StringEntry: public abstract boolean equalsString(java.lang.String);
|
|
+ java.lang.classfile.constantpool.Utf8Entry: public abstract boolean isFieldType(java.lang.constant.ClassDesc);
|
|
+ java.lang.classfile.constantpool.Utf8Entry: public abstract boolean isMethodType(java.lang.constant.MethodTypeDesc);
|
|
239 classes in old, 239 in new, 9 difference(s)
|
|
|
|
=== JDK 25 -> JDK 26 ===
|
|
+ java.lang.classfile.ClassFile: public static final int JAVA_26_VERSION;
|
|
239 classes in old, 239 in new, 1 difference(s)
|
|
|
|
=== is it a preview API on JDK 24? ===
|
|
$ javap -v java.lang.classfile.ClassFile | grep -ci PreviewFeature
|
|
24.0.2+12: 0
|
|
25.0.5+8-LTS: 0
|
|
26.0.2.1+1: 0
|
|
|
|
=== @since of ClassFile ===
|
|
jdk-24.0.2+12: * @since 24
|
|
jdk-25.0.5+8: * @since 24
|
|
jdk-26.0.2.1+1: * @since 24
|