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.
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