Para o JDK 23, os construtores do Java removeram métodos de nível médio que duplicavam métodos de nível baixo ou eram usados ​​com pouca frequência, enquanto renomeavam os métodos de nível médio restantes para melhorar a usabilidade. Eles também refinaram o ClassSignature modelo de classe, que foi melhorado para modelar as assinaturas genéricas de superclasses e superinterfaces com mais precisão. De acordo com a proposta do OpenJDK por trás desse recurso, a plataforma Java deve definir e implementar uma API de arquivo de classe padrão que evolua junto com o formato de arquivo de classe, que pode evoluir a cada seis meses.

Também citado para inclusão no JDK 23 está outro recurso de visualização, tipos primitivos em padrões, instanceofe switch. Esse recurso melhoraria a correspondência de padrões ao permitir padrões de tipos primitivos em todos os contextos de padrões e estenderia instanceof e switch para trabalhar com todos os tipos primitivos. Os objetivos incluem fornecer construções fáceis de usar que eliminam o risco de perda de informações devido a conversões inseguras; alinhar tipos de padrões com instanceof; alinhando instanceof com conversão segura; permitindo exploração uniforme de dados ao permitir padrões de tipo para todos os tipos, sejam tipos primitivos ou de referência; permitindo correspondência de padrões para usar todos os padrões de tipo primitivo em contextos aninhados e de nível superior; e seguindo os aprimoramentos para switch em Java 5 (enum switch) e Java 7 (string switch) para processar valores de qualquer tipo primitivo.

Os modelos de string, que foram visualizados no JDK 22 e no JDK 21, foram retirados da consideração para o JDK 23. O recurso tinha a intenção de complementar os literais de string e blocos de texto do Java ao acoplar texto literal e expressões incorporadas para produzir resultados especializados. A comunidade OpenJDK sentiu que o recurso “não estava dando conta do recado” e que avaliações adicionais e um possível redesenho levariam tempo.