Great to hear that..

Java SE 7 is officially released today! After nearly five years of collaboration within the worldwide Java community, Java Platform, Standard Edition is ready for download! It's an important step in Java’s evolution. The major features of Java SE 7 are:

• Project Coin- many small language changes that add up to a big boost in productivity for developers
• The Fork/Join Framework - facilitates parallelism for mulit-core processors
• The New File System API (NIO.2) - provides the ability to perform many basic file system operations natively
• InvokeDynamic - makes it easier to run other languages on the JVM

I have heard that they revised the audio player for Java. Does that mean that Java can now play .mp3 and .wma files, not just .wav? Or did they just implement a new way to add audio?

Edited 5 Years Ago by sirlink99: n/a

thank goodness they overhauled collections, that's probably going to be the most prominent feature in java 7 for me. Also, the automatic resource management is awesome: no more will I have to worry about manually closing readers.

project lambda is pretty sweet too:
http://openjdk.java.net/projects/lambda/

and another release intent on making Java a clone of C#, Ruby, and C++ all at the same time.
Maybe it's time to move to another platform, one where the maintenance/dev group does recognise its own strengths and doesn't sacrifice them for a popularity contest in some online poll.

thank goodness they overhauled collections...
project lambda is pretty sweet too

What are the changes to collections? I couldn't see anything in the release notes.
AFAIK project lambda didn't make it into J7, but is still planned for J8.

Edited 5 Years Ago by JamesCherrill: n/a

OK, thanks for that. I didn't automatically associate one fairly obscure new interface/class with "overhauling collections". Because so much of my work is around prototyping UIs I'm more excited by the shaped/translucent windows stuff. Anyway, switches on Strings will allow people to use Strings where they should be using enums...

What are the changes to collections? I couldn't see anything in the release notes.
AFAIK project lambda didn't make it into J7, but is still planned for J8.

Well they were supposed to bring collection syntax up to speed so that instead of having to type

List<int> example = new List<int>();
      example.add(23);

you could type

list<int> example = [23];

but that got pushed back too unfortunately.

http://code.joejag.com/2009/new-language-features-in-java-7/

Also,

and another release intent on making Java a clone of C#, Ruby, and C++ all at the same time.
Maybe it's time to move to another platform, one where the maintenance/dev group does recognise its own strengths and doesn't sacrifice them for a popularity contest in some online poll.

programming languages aren't made to be "unique" and pleasing to you, they are supposed to be productive to work with. I'm very glad that a lot of these changes have taken place because it will be much easier for people (including myself) to do their jobs.

Edited 5 Years Ago by StuartMillner: n/a

Looking forward to the new G1 collector which claims to be better than the CMS collector used by JDK 6. Also, it seems that they fixed the `TreeSet' to throw an exception when a non-comparable item is added to it (previously the the exception was thrown when you tried adding a second non-comparable/comparable item to the set). BTW, those who are interested in what *exactly* invokedynamic is, read the blog post by jRuby developer.

Then there is this one interesting addition to the networking stack, called the Socket Direct Protocol. Mmmm, fun stuff! :-)

and another release intent on making Java a clone of C#, Ruby, and C++ all at the same time.

JDK releases aren't just about the language. Sure, Java is trying to play catch with other languages out there but at least I'm more interested in the VM enhancements which would enable other languages built on top of the JVM to perform better.

Edited 5 Years Ago by ~s.o.s~: n/a

Comments
:)
Thanx for sharing

JDK releases aren't just about the language. Sure, Java is trying to play catch with other languages out there but at least I'm more interested in the VM enhancements which would enable other languages built on top of the JVM to perform better.

Yes, the vm improvements are nice, but the language changes for no other reason than that XXX has it (which is the real reason for any of them, Java doesn't need that crap, and has no "catching up" to do) are making the language ever less clean and readable, destroying what it was intended to be.
Switching on String is a very bad decision. As said already, use enums, that's what they're there for (or one thing they're there for).
Being able to catch multiple exceptions in a single operation is nice, but for most people writing class libraries and larger applications not really needed as they usually create a well designed exception hierarchy which effectively already allows that (now only if Sun had done the same back in 1997, there'd be less need to catch at some points half a dozen core exceptions, but those places aren't hard to abstract away).
And so on, and so on. Syntactic sugar to please some kid who thinks XXX is the bee's knees and screams loudly enough that "zuh jav iz ded unless you make it like XXX", that's all it is. Sadly those kids are leading members of the JCP, I'd hoped that'd change now that a serious company is in charge but apparently it hasn't.

This article has been dead for over six months. Start a new discussion instead.