O Java SE 24 foi lançado. Saiba mais sobre seus novos recursos, melhorias e muito mais.

Plataforma Java, Edição Standard

Após seis meses de desenvolvimento, A Oracle anunciou o lançamento do Java SE 24, baseado no projeto de código aberto OpenJDK, mantendo a compatibilidade com versões anteriores para que a maioria dos projetos desenvolvidos anteriormente continuem a ser executados sem modificações.

Ao contrário das versões de suporte de longo prazo (LTS), Java SE 24 é uma versão de suporte regular, o que implica atualizações até o próximo lançamento. Para aqueles que buscam estabilidade a longo prazo, o Java SE 21 e o Java SE 17 continuarão a receber suporte até 2031 e 2029, respectivamente. Além disso, o suporte estendido do Java SE 8 LTS continuará até 2030, enquanto o Java SE 11 permanecerá em vigor até 2032.

Melhorias e novidades

Nesta nova versão que se apresenta do Java SE 24, uma das melhorias mais importantes é a introdução de Um modo generativo experimental para o coletor de lixo Shenandoah (projetado para processar objetos novos e antigos separadamente). Este novo modo melhora a eficiência na limpeza de objetos de curta duração, otimiza o uso da memória e oferece desempenho mais estável sob cargas variadas.

Outra novidade que se destaca é o Suporte experimental para cabeçalhos de objetos compactos no HotSpot JVM, reduzindo seu tamanho de 96 para 64 bits em sistemas de 64 bits. Essa otimização ajuda a reduzir o tamanho do heap e melhorar a eficiência do cache de memória.

O coletor de lixo O G1 também foi otimizado com um novo design das barreiras que monitoram o acesso à memória pelos aplicativos. A expansão de barreira agora é realizada posteriormente no processo de compilação dentro do compilador C2 JIT, reduzindo sua sobrecarga em até 20%, dependendo do tipo de aplicativo.

Melhorias de segurança e criptografia

O Java SE 24 apresenta uma API para a derivação de chaves criptográficas (KDF), permitindo a geração de chaves adicionais a partir de uma chave secreta e um conjunto arbitrário de dados. Esta API, ainda em fase de pré-visualização, reforça a segurança no gerenciamento de chaves dentro da plataforma.

Além disso, Avisos sobre o uso de APIs foram adicionados Interface nativa Java e função estrangeira e memória, em preparação para a futura implementação de um modo de integridade, que restringirá o acesso padrão ao código nativo. Avisos também foram habilitados ao usar métodos de acesso à memória externa por meio da classe sun.misc.Unsafe, recomendando a migração para a API VarHandle.

Por outro lado, no Java SE 24 o suporte para algoritmos criptográficos ML-KEM e ML-DSA (projetado para ser resistente a ataques de computação quântica). Esses algoritmos são baseados em problemas de teoria de redes, garantindo que os tempos de solução sejam equivalentes tanto em computadores convencionais quanto quânticos.

O Java Security Manager, que estava obsoleto desde o desaparecimento do suporte a plug-ins do navegador, foi removido permanentemente.

Otimizações

O JVM HotSpot agora permite pré-carregar e vincular classes antecipadamente, o que acelera significativamente a inicialização do aplicativo. Na primeira execução, o estado das classes é armazenado em cache para facilitar o carregamento em inicializações futuras.

Além disso, A implementação dos Valores Escopados foi melhorada, que agora ppermite compartilhar dados imutáveis ​​entre threads de forma mais eficiente, substituindo o mecanismo tradicional de variáveis ​​locais de thread. Isso é especialmente benéfico ao trabalhar com milhões de threads virtuais simultaneamente.

Outra novidade é o otimização de threads virtuais em estados bloqueados. Nesta versão, um thread virtual bloqueado libera seu thread de plataforma, permitindo que ele seja reutilizado por outros threads, melhorando a escalabilidade em sistemas com alto uso de multithreading.

Do outras mudanças que se destacam:

  • Nova extensão para a API Stream, permitindo que você defina operações intermediárias personalizadas.
  • Os mecanismos de correspondência de padrões foram aprimorados para oferecer suporte a tipos primitivos (int, byte, char, etc.) em expressões switch e no operador instanceof.
  • Uma quarta versão de pré-visualização da API de simultaneidade estruturada foi adicionada, o que simplifica o desenvolvimento de aplicativos multithread ao tratar tarefas em diferentes threads como uma única unidade de execução.
  • Uma maneira mais simples de declarar classes e definir o método main() foi introduzida, eliminando a necessidade de definir uma classe pública com métodos estáticos.
  • Uma API de arquivo de classe foi adicionada, permitindo que você analise, gere e transforme arquivos de classe Java de forma mais fácil e programática.

Por fim, se estiver interessado em saber mais sobre o assunto, pode consultar os detalhes no link a seguir

BaixarJava SE 24

Aos interessados ​​em instalar a nova versão do Java SE 24, saibam que as compilações (JDK, JRE e Server JRE) já estão prontas para Linux, Windows e macOS.