Slash Boxes

SoylentNews is people

posted by janrinok on Wednesday September 21, @04:50PM   Printer-friendly

JDK 19: the New Features in Java 19

JDK 19: The new features in Java 19:

Java Development Kit 19, a non-LTS (long-term support) release of standard Java, arrives today as a production release.

Seven features target the release including structured concurrency, record patterns, a preview of a foreign function and memory API, and support for the open source Linux/RISC-V instruction set architecture (ISA). All features but the Linux/RISC-V capability are either in preview or incubator phases.

JDK 19 follows the March 22 arrival of JDK 18. Standard Java has been on a six-month release cadence for five years, with JDK 19 being the tenth six-month release.

JDK 19 is available at The production release follows two release candidates and two rampdown phases, dating back to June. The JDK 19 features include:

  • Structured concurrency, in an incubator phase, is intended to simplify multithreaded programming through a structured concurrency API. [...]
  • A preview of record patterns, to deconstruct record values. Record patterns and type patterns can be nested to enable a declarative, powerful, and composable form of data navigation and processing. [...]
  • A preview of a foreign function and memory API, which would introduce an API by which Java programs can interoperate with code and data outside the Java runtime. [...]
  • A preview of virtual threads, which are lightweight threads that dramatically reduce the effort of writing, maintaining, and observing high-throughput, concurrent applications. [...]
  • A third preview of pattern matching for switch expressions and statements, extending pattern matching to switch, to allow an expression to be tested against a number of patterns, each with a specific action, so complex data-oriented queries can be expressed concisely and safely. [...]
  • A fourth incubation of a vector API that would express vector computations that reliably compile at runtime to optimal vector instructions on supported CPU architectures, thus achieving performance superior to equivalent scalar computations. [...]
  • With the Linux/RISC-V port, Java would gain support for a hardware instruction set that is already supported by a wide range of language toolchains. [...]

The port would support the following HotSpot VM options: the template interpreter, C1 (client) JIT compiler, C2 (server) JIT compiler, and all current mainline garbage collectors including ZGC and Shenandoah.[...]

Like JDK 18, JDK 19 is due to be a short-term release, with only six months of top-level, Premier support.

Oracle Releases Java 19 With Seven Significant Enhancements

Oracle releases Java 19 with seven significant enhancements:

Oracle brews Java 19. Mmmm, kinda tastes like RISC-V

In its evangelizing slide deck accompanying this release, Oracle ranks Java as the "#1 language for today's technology trends" and the "#1 language in overall development organizational use." The company also cites consultancy VDC Research's findings that "Java is #1 choice for cloud."

When measured in more general terms, Java ranks #2 or #3 or #5, depending upon which programming language survey gets cited. But programming language popularity alone, however that gets measured, doesn't necessarily build an ecosystem.

Suffice it to say that Java continues to be extremely important to Oracle, to the estimated 10 million Java developers wandering the world, and to 60 billion active Java Virtual Machines (JVMs) that rely on a 27-year-old programming language.

Original Submission #1Original Submission #2

This discussion was created by janrinok (52) for logged-in users only, but now has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 2, Informative) by Anonymous Coward on Wednesday September 21, @06:56PM (4 children)

    by Anonymous Coward on Wednesday September 21, @06:56PM (#1272840)

    Version 19!!! Good grief, that's tragic, our IT department recently migrated some of our Enterprise software off Java 6 and onto Java 7. It still has problems. Now this article has made me go and look up the age of those versions: Java 6 = 2006, Java 7 = 2011. Good to know that my awful, useless, couldn't-give-a-shit IT department is really keeping us at the cutting edge!

    Starting Score:    0  points
    Moderation   +2  
       Informative=1, Funny=1, Total=2
    Extra 'Informative' Modifier   0  

    Total Score:   2  
  • (Score: 2, Informative) by Anonymous Coward on Wednesday September 21, @07:06PM (1 child)

    by Anonymous Coward on Wednesday September 21, @07:06PM (#1272842)
    The tragic and funny bit is how so many people try to build and maintain complex "skyscrapers" on foundations that change significantly every 5 years or less and consider such foundations good and "enterprise ready".

    Tragic if you're one of those involved and not getting paid enough for it. Funny is if you're the one watching from a great distance.
    • (Score: 3, Funny) by DannyB on Wednesday September 21, @08:54PM

      by DannyB (5839) Subscriber Badge on Wednesday September 21, @08:54PM (#1272881) Journal

      Is that different than having a really old application that runs on a really old Linux and old Apache web server? Yes, they should have kept using the newer releases as they came out. But sometimes people don't do that. That is likely a source of vulnerabilities.

      Moving up to the latest is probably not really that difficult. The Java maintainers have been very careful about compatibility.

      I get constant rejection even though the compiler is supposed to accept constants.
  • (Score: 4, Insightful) by bradley13 on Wednesday September 21, @07:49PM

    by bradley13 (3053) Subscriber Badge on Wednesday September 21, @07:49PM (#1272853) Homepage Journal

    Honestly, they should at least have moved to Java 8. Lots of people are still using that version. No reason not to skip 7.

    But, really, backwards compatibility is good. It probably wouldn't be that difficult to move to the latest LTS, which is 17.

    Everyone is somebody else's weirdo.
  • (Score: 5, Funny) by Snort on Wednesday September 21, @08:51PM

    by Snort (5141) on Wednesday September 21, @08:51PM (#1272878)

    We tried testing the application stack on Java 8 and weird things happened so we stopped to take augers from the gods. Signs were bad so we buried the project. We will take augers again in the next red moon.