What Java 7 will mean to you
I just saw a post on Stack Overflow about what Java 7 will mean to Java programmers and while I responded there, I thought it was worthwhile to repeat those comments here as well.
As far as what changes you’ll see in your day-to-day work, my guess is that the major impact will be stuff like JSR 203 which overhauls the file system API. If JSR 310 is included, then it would also have a major impact on how you interact with any aspect of the date and time APIs. Many of the other JSRs will only impact you if you happen to already do something in that particular area (JMX – JSR 255, concurrency – JSR 166, etc).
I think it’s unknown at this point how much JSR 294 and Jigsaw will impact us day to day. It’s possible that it will be a new and important way to define modules that will impact the way we bundle libraries, define dependencies, and deploy our apps. Or it may just be used in the JDK and ignored elsewhere. Only time will tell.
There will be a handful of language changes that come out of Project Coin but they are mostly going to be small useful but not revolutionary changes that help remove some boilerplate.
I think the biggest thing most people will notice may be performance. As usual, each JDK brings a whole new set of performance optimizations. We’ve already seen some very encouraging results in String performance, array performance, and a new concurrent garbage collector (G1). I suspect many people will find that their existing code will work and run noticeably faster than it did in the past.