This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
The Stream API
Programming with Lambdas
The New Date and Time API
Java 7 Features That You May Have Missed
Hi the most important things that most would be probably using will be.
1. Defender Methods - Concrete Methods in the Interface !! (This is really cool) you can actually write implemented methods in an Interface.
2. Stream API
3. Lambda Expressions - You will be using this together with the Stream API if you want to use the multi core features. The syntax will take some time to burn in but its really worth it
I am no expert in these things but I believe some one can explain this in more detail over here.......
The big Java 8 feature is of course lambdas with all its ramifications (method references, default and static methods in interfaces, streams). That's about 1/3 of my book.
There is a new date/time API that is very nice--you'll never want to use GregorianCalendar again.
If you still do rich GUI clients, you will want to know about JavaFX. It comes automatically bundled with Java 8, as Swing is now in "maintenance mode".
There are concurrency enhancements, mostly for advanced users. For example, it is now easy to make threadsafe maps of counters. (This used to be surprisingly painful.)
And of course, there are a bunch of minor changes (easy string joining, a mod method with sane behavior for negative inputs, official support for Base64 encoding, etc.) I searched through the source tree and collected the useful nuggets so you wouldn't have to.
Can I use Java FX for client side scripting ??
Joined: Nov 14, 2004
JavaFX no longer has its own scripting language. You write the code in Java, but you get the JavaFX components, shapes, etc.
In fact, you can write JavaFX programs in Nashorn. It's not as convenient as the JavaFX Script language used to be, but it could be pretty close if someone worked at imitating the old builder syntax with nested JS objects.