New APIs in Java 25
Comparing Java 25 (25-ea+22-2667-open) with Java 23 (23.0.2+7-tem).
Element | Modification |
---|---|
java.base | |
java.io | |
Console | |
print(Object) |
|
println(Object) |
|
readln(String) |
|
| |
IO |
|
ObjectInputStream | |
| |
| |
ObjectOutputStream | |
| |
| |
| |
Reader | |
| |
| |
| |
ITEM_DOUBLE | |
ITEM_FLOAT | |
ITEM_INTEGER | |
ITEM_LONG | |
ITEM_NULL | |
ITEM_TOP | |
ITEM_UNINITIALIZED_THIS | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
build() | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
java.lang.classfile.components | |
| |
| |
| |
| |
| |
| |
| |
annotationConstantValueEntry(ConstantDesc) | |
writeBootstrapMethods(BufWriter) | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
tag() | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
writeTo(BufWriter) | |
| |
writeTo(BufWriter) | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
attributeName() | |
writeTo(BufWriter) | |
| |
| |
DROP_UNSTABLE_ATRIBUTES | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
constantValue() | |
isUnconditionalBranch() | |
primaryTypeKind() | |
secondaryTypeKind() | |
slot() | |
| |
| |
| |
| |
BooleanType | |
ByteType | |
CharType | |
DoubleType | |
FloatType | |
IntType | |
LongType | |
ReferenceType | |
ShortType | |
VoidType | |
descriptor() | |
typeName() | |
| |
ofClass(AccessFlag...) | |
ofClass(int) | |
ofField(AccessFlag...) | |
ofField(int) | |
ofMethod(AccessFlag...) | |
ofMethod(int) | |
| |
| |
| |
| |
| |
AnnotationValue.OfCharacter | |
| |
| |
constantValue() | |
| |
| |
| |
AnnotationValue.OfInteger | |
| |
| |
| |
| |
ofBoolean(IntegerEntry) | |
ofBoolean(boolean) | |
ofByte(IntegerEntry) | |
ofByte(byte) | |
ofChar(IntegerEntry) | |
ofChar(char) | |
ofDouble(DoubleEntry) | |
ofDouble(double) | |
ofFloat(FloatEntry) | |
ofFloat(float) | |
ofInt(IntegerEntry) | |
ofInt(int) | |
ofLong(LongEntry) | |
ofLong(long) | |
ofShort(IntegerEntry) | |
ofShort(short) | |
ofString(String) | |
ofString(Utf8Entry) | |
tag() | |
| |
| |
readAttribute(AttributedElement, ClassReader, int) | |
writeAttribute(BufWriter, Object) | |
| |
attributeName() | |
| |
| |
| |
copyTo(byte[], int) | |
writeBytes(BufWriter) | |
writeList(List) | |
writeListIndices(List) | |
| |
original() | |
| |
| |
| |
| |
| |
canWriteDirect(ConstantPool) | |
transform(CompoundElement, ClassFileTransform) | |
| |
ClassFileTransform.ResolvedTransform | |
| |
resolve(ClassFileBuilder) | |
| |
| |
AALOAD | |
AASTORE | |
ACONST_NULL | |
AEV_ANNOTATION | |
AEV_ARRAY | |
AEV_BOOLEAN | |
AEV_BYTE | |
AEV_CHAR | |
AEV_CLASS | |
AEV_DOUBLE | |
AEV_ENUM | |
AEV_FLOAT | |
AEV_INT | |
AEV_LONG | |
AEV_SHORT | |
AEV_STRING | |
ALOAD | |
ALOAD_0 | |
ALOAD_1 | |
ALOAD_2 | |
ALOAD_3 | |
ANEWARRAY | |
ARETURN | |
ARRAYLENGTH | |
ASTORE | |
ASTORE_0 | |
ASTORE_1 | |
ASTORE_2 | |
ASTORE_3 | |
ATHROW | |
BALOAD | |
BASTORE | |
BIPUSH | |
CALOAD | |
CASTORE | |
CHECKCAST | |
CRT_ASSIGNMENT | |
CRT_BLOCK | |
CRT_BRANCH_FALSE | |
CRT_BRANCH_TRUE | |
CRT_CREATE | |
CRT_FLOW_CONTROLLER | |
CRT_FLOW_TARGET | |
CRT_INVOKE | |
CRT_STATEMENT | |
D2F | |
D2I | |
D2L | |
DADD | |
DALOAD | |
DASTORE | |
DCMPG | |
DCMPL | |
DCONST_0 | |
DCONST_1 | |
DDIV | |
DEFAULT_CLASS_FLAGS | |
DLOAD | |
DLOAD_0 | |
DLOAD_1 | |
DLOAD_2 | |
DLOAD_3 | |
DMUL | |
DNEG | |
DREM | |
DRETURN | |
DSTORE | |
DSTORE_0 | |
DSTORE_1 | |
DSTORE_2 | |
DSTORE_3 | |
DSUB | |
DUP2 | |
DUP2_X1 | |
DUP2_X2 | |
DUP | |
DUP_X1 | |
DUP_X2 | |
F2D | |
F2I | |
F2L | |
FADD | |
FALOAD | |
FASTORE | |
FCMPG | |
FCMPL | |
FCONST_0 | |
FCONST_1 | |
FCONST_2 | |
FDIV | |
FLOAD | |
FLOAD_0 | |
FLOAD_1 | |
FLOAD_2 | |
FLOAD_3 | |
FMUL | |
FNEG | |
FREM | |
FRETURN | |
FSTORE | |
FSTORE_0 | |
FSTORE_1 | |
FSTORE_2 | |
FSTORE_3 | |
FSUB | |
GETFIELD | |
GETSTATIC | |
GOTO | |
GOTO_W | |
I2B | |
I2C | |
I2D | |
I2F | |
I2L | |
I2S | |
IADD | |
IALOAD | |
IAND | |
IASTORE | |
ICONST_0 | |
ICONST_1 | |
ICONST_2 | |
ICONST_3 | |
ICONST_4 | |
ICONST_5 | |
ICONST_M1 | |
IDIV | |
IFEQ | |
IFGE | |
IFGT | |
IFLE | |
IFLT | |
IFNE | |
IFNONNULL | |
IFNULL | |
IF_ACMPEQ | |
IF_ACMPNE | |
IF_ICMPEQ | |
IF_ICMPGE | |
IF_ICMPGT | |
IF_ICMPLE | |
IF_ICMPLT | |
IF_ICMPNE | |
IINC | |
ILOAD | |
ILOAD_0 | |
ILOAD_1 | |
ILOAD_2 | |
ILOAD_3 | |
IMUL | |
INEG | |
INSTANCEOF | |
INVOKEDYNAMIC | |
INVOKEINTERFACE | |
INVOKESPECIAL | |
INVOKESTATIC | |
INVOKEVIRTUAL | |
IOR | |
IREM | |
IRETURN | |
ISHL | |
ISHR | |
ISTORE | |
ISTORE_0 | |
ISTORE_1 | |
ISTORE_2 | |
ISTORE_3 | |
ISUB | |
IUSHR | |
IXOR | |
JSR | |
JSR_W | |
L2D | |
L2F | |
L2I | |
LADD | |
LALOAD | |
LAND | |
LASTORE | |
LCMP | |
LCONST_0 | |
LCONST_1 | |
LDC2_W | |
LDC | |
LDC_W | |
LDIV | |
LLOAD | |
LLOAD_0 | |
LLOAD_1 | |
LLOAD_2 | |
LLOAD_3 | |
LMUL | |
LNEG | |
LOOKUPSWITCH | |
LOR | |
LREM | |
LRETURN | |
LSHL | |
LSHR | |
LSTORE | |
LSTORE_0 | |
LSTORE_1 | |
LSTORE_2 | |
LSTORE_3 | |
LSUB | |
LUSHR | |
LXOR | |
MONITORENTER | |
MONITOREXIT | |
MULTIANEWARRAY | |
NEWARRAY | |
NEW | |
NOP | |
POP2 | |
POP | |
PUTFIELD | |
PUTSTATIC | |
RETURN | |
RET | |
SALOAD | |
SASTORE | |
SIPUSH | |
SWAP | |
TABLESWITCH | |
TAG_CLASS | |
TAG_CONSTANTDYNAMIC | |
TAG_DOUBLE | |
TAG_FIELDREF | |
TAG_FLOAT | |
TAG_INTEGER | |
TAG_INTERFACEMETHODREF | |
TAG_INVOKEDYNAMIC | |
TAG_LONG | |
TAG_METHODHANDLE | |
TAG_METHODREF | |
TAG_METHODTYPE | |
TAG_MODULE | |
TAG_NAMEANDTYPE | |
TAG_PACKAGE | |
TAG_STRING | |
TAG_UNICODE | |
TAG_UTF8 | |
TAT_CAST | |
TAT_CLASS_EXTENDS | |
TAT_CLASS_TYPE_PARAMETER | |
TAT_CLASS_TYPE_PARAMETER_BOUND | |
TAT_CONSTRUCTOR_INVOCATION_TYPE_ARGUMENT | |
TAT_CONSTRUCTOR_REFERENCE | |
TAT_CONSTRUCTOR_REFERENCE_TYPE_ARGUMENT | |
TAT_EXCEPTION_PARAMETER | |
TAT_FIELD | |
TAT_INSTANCEOF | |
TAT_LOCAL_VARIABLE | |
TAT_METHOD_FORMAL_PARAMETER | |
TAT_METHOD_INVOCATION_TYPE_ARGUMENT | |
TAT_METHOD_RECEIVER | |
TAT_METHOD_REFERENCE | |
TAT_METHOD_REFERENCE_TYPE_ARGUMENT | |
TAT_METHOD_RETURN | |
TAT_METHOD_TYPE_PARAMETER | |
TAT_METHOD_TYPE_PARAMETER_BOUND | |
TAT_NEW | |
TAT_RESOURCE_VARIABLE | |
TAT_THROWS | |
VT_DOUBLE | |
VT_FLOAT | |
VT_INTEGER | |
VT_LONG | |
VT_NULL | |
VT_OBJECT | |
VT_TOP | |
VT_UNINITIALIZED | |
VT_UNINITIALIZED_THIS | |
WIDE | |
transform(ClassModel, ClassDesc, ClassTransform) | |
transform(ClassModel, ClassEntry, ClassTransform) | |
transform(ClassModel, ClassTransform) | |
| |
| |
| |
| |
compare(BufWriter, int, int, int) | |
readClassEntry(int) | |
readMethodHandleEntry(int) | |
readModuleEntry(int) | |
readNameAndTypeEntry(int) | |
readPackageEntry(int) | |
readUtf8Entry(int) | |
readUtf8EntryOrNull(int) | |
| |
| |
resolve(ClassBuilder) | |
| |
| |
| |
if_nonnull(Label) | |
if_null(Label) | |
loadConstant(Opcode, ConstantDesc) | |
original() | |
| |
| |
maxLocals() | |
maxStack() | |
| |
resolve(CodeBuilder) | |
| |
elements() | |
forEachElement(Consumer) | |
| |
original() | |
| |
| |
| |
resolve(FieldBuilder) | |
| |
| |
| |
| |
original() | |
| |
| |
| |
| |
resolve(MethodBuilder) | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
of(TypeAnnotation.TargetInfo, List, ClassDesc,... | |
of(TypeAnnotation.TargetInfo, List, ClassDesc,... | |
of(TypeAnnotation.TargetInfo, List, Utf8Entry,... | |
of(TypeAnnotation.TargetInfo, List, Utf8Entry,... | |
WritableElement | |
java.lang.constant | |
| |
ClassDesc | |
| |
| |
| |
java.lang.invoke | |
| |
| |
java.lang.module | |
| |
java.lang.reflect | |
| |
| |
AccessFlag.Location | |
| |
| |
| |
| |
AccessFlag | |
| |
ClassFileFormatVersion | |
java.lang.runtime | |
| |
| |
java.lang | |
Boolean | |
| |
| |
Byte | |
| |
| |
Character.UnicodeBlock | |
Character | |
| |
Class | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
Double | |
| |
| |
Float | |
| |
| |
| |
| |
Integer | |
| |
| |
Long | |
| |
| |
| |
Process | |
| |
| |
ScopedValue | |
callWhere(ScopedValue, Object,... | |
runWhere(ScopedValue, Object, Runnable) | |
SecurityManager | |
| |
Short | |
| |
| |
Character.UnicodeScript | |
CharSequence | |
| |
| |
java.net | |
| |
| |
| |
java.nio.charset | |
| |
| |
java.nio.file | |
| |
java.nio | |
CharBuffer | |
| |
java.security.spec | |
NamedParameterSpec | |
java.security | |
| |
| |
| |
java.util.concurrent.locks | |
| |
java.util.concurrent | |
| |
| |
java.util.stream | |
| |
| |
| |
| |
| |
Stream | |
| |
java.util.zip | |
| |
| |
| |
java.util | |
| |
| |
Currency | |
| |
| |
TimeZone | |
javax.crypto.spec | |
javax.crypto | |
javax.net.ssl | |
| |
javax.security.auth | |
| |
| |
java.compiler | |
javax.lang.model | |
SourceVersion | |
java.desktop | |
java.awt.peer | |
WindowPeer | |
repositionSecurityWarning() | |
java.awt | |
| |
KeyboardFocusManager | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
Window | |
| |
| |
java.beans | |
Beans | |
| |
| |
javax.sound.sampled | |
| |
javax.swing.plaf.basic | |
BasicSliderUI | |
BasicSliderUI() | |
BasicSplitPaneDivider | |
javax.swing.plaf.synth | |
SynthLookAndFeel | |
load(URL) | |
javax.swing | |
FocusManager | |
| |
JInternalFrame | |
| |
JSplitPane | |
UIManager | |
| |
java.logging | |
java.util.logging | |
FileHandler | |
| |
| |
| |
| |
| |
| |
Handler | |
| |
| |
| |
| |
| |
LogManager | |
| |
| |
| |
| |
Logger | |
| |
| |
| |
| |
| |
MemoryHandler | |
| |
| |
SocketHandler | |
| |
StreamHandler | |
| |
| |
| |
java.management | |
java.lang.management | |
| |
javax.management.modelmbean | |
DescriptorSupport | |
| |
| |
| |
javax.management.remote | |
| |
javax.management | |
| |
| |
| |
java.naming | |
javax.naming | |
Context | |
APPLET | |
java.net.http | |
java.net.http | |
HttpResponse.BodyHandlers | |
HttpResponse.BodySubscribers | |
HttpResponse | |
java.rmi | |
java.rmi.server | |
RMIClassLoader | |
| |
java.security.jgss | |
javax.security.auth.kerberos | |
| |
| |
java.xml.crypto | |
javax.xml.crypto.dsig | |
SignatureMethod | |
This report is based on simple comparison of all public
and
protected
APIs of the java.*
and javax.*
packages of JDK builds 25-ea+22-2667-open and
23.0.2+7-tem. It does not make statements about
compatibility.
For the latest Java versions the corresponding CSRs (Compatibility & Specification Review) are linked for a quick reference to find out about the reasoning of the change.