Language selector

Java 14

In the dark ages, we had to wait for 3-4 years to see the new Java version with some new features. Now there are two major releases every year! Can we benefit from the new features before the next LTS release? We don’t have to wait 3 years or so for new features any more. Isn’t that cool? 😉 So… you’d like to check what has happened since Java 11? Record types?
When explaining Java records online I was asked several times ‘right, what about Lombok?’ In particular this question was ‘if the records are immutable, how are they different from Lombok’s @Value?’
When Java 14 was (about to be) released I saw a few discussions following more or less this schema: - Oh, records in Java, cool, finally we have automatically generated setters and getters! - No, records in Java are POJOs without any setters… - Oh, I see… Cool, finally in Java we have generated Beans, without any setters though!
In the previous post I wrote how to make a record and what is actually the purpose of the records. In this entry I focus on the limitations and abilities of the records.
Java 14 introduced records as a preview feature. There was (is?) a decent amount of confusion, declarations and even heavy insults against ‘enemy’ libraries and IDE plugins. Let me take part in thi s, please.
In the chase for non-trivial examples to illustrate possible usage of JEP 305, some people might have gone too far, I guess. In particular into the more challenging area of the equals() method, present in all Java objects.
Java 14 has a lot of new features. One of them (as preview feature) is pattern matching with instanceof. Some people programming in languages supporting the functional paradigm to some extent, e.g. Scala, Kotlin (not to mention Haskell) jumped high, full of joy ‘Yay, we gonna have match or when, extracting data, guards, deconstructors in companion objects and more!’
Java 14 brought Records as one of the preview features. For many it was reasonable to say “no more JavaBeans code generation” or “Lombok is dead”. Is that really the case? What one can do with records and what can’t? What about reflection and serialization? \ This talk has been presented at e.g. AllTheTalks.online, CodeCamp Romania, JPoint.
Hey, there are two major Java versions released every year! We don’t have to wait 3 years or so for new features any more. Isn’t that cool? ;-) So… would you like to check out what has happened in Java 14? Switch expressions available to public? No more NPEs? Record types? Pattern matching? Text blocks? If you find them interesting, let’s dive deep together into new interesting stuff. This talk has been presented at Wrocław JUG and Warszawa JUG.

Language selector