Oracle no longer release public update for Java 7 since April 2015, after Java’s 20 year’s birthday. It’s time to move forward to Java 8.
While Java 8 has a very long New Features List, the most discussed is lambda expressions (anonymous functions) support. The Difference in Approaches and Mutual Innovations talked about the difference in the language of Java 8 and Scala, and Java 8 vs Scala: a Feature Comparison gives more detailed introduction about the new language features. Some satisfied with no need to write loops in Java 8, while some argue that Java 8′s lambda can not make Scala obsolete. Anyway, new language features in Java 8 while make it more promising.
In the points of JVM improvements, Java 8 out performs Java 7 in a variety of workloads. One of the reason is the ForkJoin improvements in Java 8. Scala 2.11.x has a experimental support for Java 8, and Scala 2.12 will target Java 8 by default. It is good to see the improvement both in Java and Scala.
To use Java 8 in debian:
apt-get install openjdk-8-jdk openjdk-8-jre
update-alternatives --config java