A quick look back at Java over the last five years

Since I have decided to change jobs and will use Java at the new job destination [Article written on the blog](https://yk0807.com/techblog/2019/03/29/%E3%81%93%E3%81% 935% E5% B9% B4% E3% 81% BB% E3% 81% A9% E3% 81% AEjava% E3% 82% 92% E7% B0% A1% E5% 8D% 98% E3% 81% AB% E6% 8C% AF% E3% 82% 8A% E8% BF% 94% E3% 81% A3% E3% 81% A6% E3% 81% BF% E3% 82% 8B /) to see.

According to Wikipedia page and JDK official page, it looks like this. March 2014 Java8 (lambda expression, type annotation, Date and Time API, JavaFX (GUI tool with higher functionality than Swing), etc.) September 2017 Java9 (Support for modularization at the language level, etc.) March 2018 Java10 (local variable type inference, etc.) September 2018 Java 11 (** Oracle JDK paid for nest-based access control, etc. !! **) March 2019 Java12 (API of JVM constants, etc.)

Looking at it like this, you can see that various functions were added in Java 8 five years ago. Above all, I think the introduction of the lambda expression was quite large. An example of a lambda expression looks like this.

package Lambdatest;
import java.util.function.*;

public class LambdaTest {
	public static void main(String[] args) {
		double x1 = 3.0;
		double y1 = 4.0;
		BiFunction<Double, Double, Double> z = (x, y) -> Math.sqrt(x * x + y * y);
		System.out.println(z.apply(x1, y1));
	}
}

If you try to do the same thing without using lambda expressions, you'll end up using anonymous classes and it's pretty confusing. Speaking of which, C ++ can also use lambda expressions from C ++ 11 with a large addition of language specifications.

There are many other features, and it's really improved in the last few years. However, not only is it good, but the fact that the Oracle JDK has been paid for from Java 11 (although it seems to be okay for personal use) seems to hurt many people. .. .. OpenJDK can be used free of charge, but the support period is short, so it's a problem.

Postscript

I received information in the comment section, so I will add a little. There seems to be a free OpenJDK compatible distribution called Amazon Corretto. Please refer to here for the installation method.

Recommended Posts

A quick look back at Java over the last five years
A quick look at the Monty Hall problem
A look at Jenkins, OpenJDK 8 and Java 11
[Rails] [Docker] Copy and paste is OK! How to build a Rails development environment with Docker
Use Vue.js on a CDN (only copy and paste!)
A quick look back at Java over the last five years
A look at Jenkins, OpenJDK 8 and Java 11
A Java user over a dozen years ago tried to study the functions of Java8 (Generics).
Take a quick look at Gradle and read the build.gradle generated by Spring Initializr
A Java user over a dozen years ago tried to study the functions of Java8 (Lambda expression).
Let's take a look at the Hotspot JVM startup procedure
Let's take a look at the screen of Quant Analyzer!
Oracle Java Trends 2018 = Quick Summary = (Looking at the Oracle JDK 11 Release)
[Java] Let's take a look at Switch Expressions (Preview) of JDK 13.
I took a look at the resources of Azure Container Instance
Compile Java at the command prompt