Java SE 23 lançado com melhorias de desempenho, e mais

E foi lançado o Java SE 23 com melhorias de desempenho, e mais. Confira as novidades dessa importante atualização.

Java é uma das linguagens de programação mais populares por aí. Mas não apenas isso, também consiste em uma plataforma de software altamente popular entre os desenvolvedores.

Além de tudo isso, é uma linguagem muito robusta que tolera erros em tempo real através de exceções. E por isso, muitas empresas confiam no Java para implantar seu software altamente confiável. Java também é necessário para executar programas não tão populares na área de trabalho.

E, há poucos dias, a Oracle anunciou o lançamento da nova versão do Java SE 23.

Novidades do Java SE 23

Java SE 23 lançado com melhorias de desempenho, e mais

Lançada como versão de suporte regular (você receberá atualizações até a próxima versão). Versões LTS, como Java SE 21 e Java SE 17, terão suporte estendido até 2031 e 2029, respectivamente, enquanto Java SE 8 e SE 11 continuarão a receber suporte estendido até 2030 e 2032.

Dentre as 23 novidades do Java SE 23, destaca-se a ativação padrão do Generational Z Garbage Collector, modo de operação generativo que separa o processamento de objetos.

Isso melhora a eficiência da limpeza de objetos, reduz a carga da CPU, o consumo de memória e o risco de bloqueios de alocação de recursos.

Outra novidade é a inclusão de suporte a Markdown no JavaDoc, que facilita a documentação do código ao permitir o uso de Markdown em vez de tags HTML combinadas com JavaDoc.

No Java SE 23 o padrão de correspondência também foi aprimorado para suportar tipos primitivos, permitindo seu uso na declaração instanceof e em blocos switch.

Isso permite que tipos primitivos, como int ou byte, sejam manipulados diretamente nas estruturas de fluxo de controle, melhorando a clareza e a funcionalidade do código.

Java SE 23 também introduz suporte preliminar para a instrução module import com import module M, permitindo importar todos os pacotes exportados por um módulo específico em uma única linha.

Outro aspecto importante é a atualização para JavaFX 23, plataforma aprimorada para desenvolvimento de interfaces gráficas. Junto com isso, o compilador GraalVM JIT foi integrado ao JDK principal da Oracle, oferecendo maior desempenho e otimização de tempo de execução.

Já o GraalVM, sua nova versão traz suporte para execução de aplicações nas mais diversas linguagens, além de linguagens que geram código LLVM, como C, C++ e Rust.

Esta versão melhora o consumo de memória, reduz o tamanho do código executável e fornece suporte para incorporação de Python e WebAssembly em código Java por meio de compilação JIT.

Por outro lado, é apresentada a oitava prévia da API Vector em Java SE 23, que apresenta funções avançadas para realizar cálculos vetoriais que aproveitam as instruções SIMD nos processadores x86_64 e AArch64.

Esta API permite que os desenvolvedores controlem explicitamente a vetorização das operações, em oposição à vetorização automática oferecida pelo compilador HotSpot JIT. Isso melhora o desempenho ao processar dados em paralelo.

Uma segunda implementação preliminar de uma API Stream estendida também foi introduzida, permitindo a definição de operações intermediárias personalizadas, úteis quando as transformações de dados padrão não são suficientes.

Das outras mudanças que conheço se destacam nesta nova versão:

  • Os métodos para acessar memória externa (fora da JVM) fornecidos pela classe sun.misc.Unsafe foram marcados como obsoletos e estão planejados para serem removidos em versões futuras.
  • A classe java.io.Console agora inclui novos métodos como format, printf, readPassword e readLine.
  • É apresentada uma segunda implementação preliminar da API Class-File, que facilita a análise, geração e conversão de arquivos de classe Java, permitindo maior flexibilidade na manipulação de bytecode.
  • Classes e métodos declarados implicitamente permitem simplificar seu código, eliminando a necessidade de especificar declarações públicas ou estáticas para métodos principais.
  • Está incluída uma terceira implementação de Valores com Escopo, uma nova maneira de compartilhar dados imutáveis ​​entre threads de forma mais eficiente, especialmente em ambientes onde um grande número de threads virtuais é usado.
  • Uma terceira prévia da API Structured Concurrency foi proposta no Java SE 23, que visa simplificar o desenvolvimento de aplicações multithread. Esta API permite lidar com múltiplas tarefas executadas em diferentes threads de forma mais controlada e coerente, tratando-as como se fossem um único bloco de código.

Para saber mais sobre essa versão do Java SE, acesse a nota de lançamento.

Como instalar ou atualizar o Java SE

Para os interessados ​​em instalar a nova versão do Java SE 23, saiba que as builds (JDK, JRE e Server JRE) já estão prontas para Linux, Windows e macOS.

Sair da versão mobile