Java 8 was released last month and is just chock-full of new features and behind-the-scenes optimizations. The internet has been doing quite a good job covering all these new additions – both the good and the bad. I thought it’d be good to do a round-up of what we think are some of the best tutorials out there, to help you get you quickly up-to-speed on what’s new and what you need to know.
Java 8 New Features List
Let’s start with the basics – the official OpenJDK list of new features in the Java 8 core library, JVM and the JDK. This is a must read.
Hailed as the biggest change to the language in the last decade, Java 8’s Lambda expressions finally deliver core elements of functional programming that have been made popular with languages such as Scala and Clojure right to your doorstep.
This is really one of those cases where I suggest going with the official documentation and tutorials first:
- The official Java Lambda expressions tutorial
- An extensive Lambda expressions tutorial with examples
Parallel Array Operations
2 is better than 1 (it’s kitch song time!). Java 8 now lets you operate on arrays and collections in parallel to maximize use of your hardware’s resource with a simple and intuitive new set of APIs. Check ‘em out:
This is a personal favourite of mine. I always thought Java has done such a great job at providing powerful idioms for safe multi-threaded operations. That’s why I always felt it was such a shame it did not provide an intrinsic idiom for multi-threaded counters. I just get shivers when I think of all the bugs and man hours that could have been saved. Well, not anymore. Concurrent counters are finally here!
Date Time APIs
Java 8 finally makes using date and time operations in your code simple and intuitive, on par with that we’re used to with Joda Time.
And before we move on to other subjects, here’s a very thorough tutorial on all the new language and library additions in Java 8.
Java 8 made significant changes to the internals of the GC engine, going as far as removing the permgen space.
Java 8 Security
Code security is right up there with brushing your teeth or doing your cardio. You don’t really like doing it for the most the part, but you know that bad things will happen if you don’t. Here’s a good (and concise) round-up of the new security features in Java 8. So go ahead and brush your teeth –
While not really a tutorial, I thought it’d be worth mentioning that Java 8 has finally gone ahead and improved how Hashmaps operate under stress – something that’s been talked about for years now and finally got done. Good job!