Pular para o conteúdo principal

Postagens

Mostrando postagens com o rótulo Java17

Eclipse Migration Toolkit for Java

  Eclipse Migration Toolkit for Java (EMT4J) simplifica a atualização de aplicativos Java A Adoptium apresentou o Eclipse Migration Toolkit for Java (EMT4J), um projeto Eclipse de software livre capaz de analisar e atualizar aplicativos do Java 8 para o Java 11 e do Java 11 para o Java 17. O EMT4J suportará a atualização para futuras versões LTS. As organizações aconselham manter o Java runtime atualizado para obter segurança e melhorias funcionais. Enquanto isso, as versões Java Long Term Support (LTS) serão lançadas a cada dois anos e projetos como o Spring Framework 6 agora requerem o Java 17. Infelizmente, a adoção de novas versões Java é relativamente lenta. Por exemplo, em 2022, quatro anos após seu lançamento, o Java 11 foi usado por menos de 49% dos aplicativos Java. Atualizar um aplicativo para uma nova versão do Java significa que os desenvolvedores precisam resolver todos os problemas introduzidos pelas alterações e remoções dentro do Java. Isso inclui funcionalidades co

Diferenças entre o Java 11 e Java 17 - Pattern matching for instanceof e mais

    Diferenças entre Java 11 e 17 - Pattern matching for instanceof e mais Neste terceiro post vamos falar sobre Pattern matching for instanceof e algumas melhorias a mais . Caso não tenha acompanhado a primeira e segundas partes, acesse aqui   e aqui . Pattern matching for instanceof Freqüentemente, é necessário verificar se um objeto é de um certo tipo e, quando for, a primeira coisa a fazer é converter o objeto para uma nova variável desse certo tipo. Um exemplo pode ser visto no seguinte código: private static void oldStyle () { Object o = new GrapeClass( Color . BLUE , 2 ); if ( o instanceof GrapeClass ) { GrapeClass grape = ( GrapeClass ) o ; System . out .println( "This grape has " + grape .getNbrOfPits() + " pits." ); } } O resultado é: This grape has 2 pits. Com " pattern matching for instanceof ", o exemplo acima pode ser reescrito da seguinte maneira. Como você pode ver, é possível criar a variável na instância

Diferenças entre o Java 11 e Java 17 - Records e Sealed Classes

    Diferenças entre Java 11 e 17 - Records e Sealed Classes Neste segundo post vamos falar sobre Records e Sealed Classes . Caso não tenha acompanhado a primeira parte sobre Text Blocks e Switch Expressions , está aqui . Records Records permitirão que você crie classes de dados imutáveis. Atualmente, você precisa, por exemplo, crie uma Classe de dados usando as funções de geração automática de seu IDE para gerar construtor, getters, hashCode, equals e toString ou você pode usar o Lombok para essa finalidade. No final, você acaba com algum código clichê ou acaba com uma dependência do Lombok em seu projeto. public class GrapeClass { private final Color color ; private final int nbrOfPits ; public GrapeClass ( Color color, int nbrOfPits) { this . color = color; this . nbrOfPits = nbrOfPits; } public Color getColor () { return color ; } public int getNbrOfPits () { return nbrOfPits ; } @Override public boolean