Java people, check out the API docs for Java 1.4. They're at http://www.javasoft.com/j2se/1.4/docs/api/index.html
Check this out (a lot is missing, a lot is unimportant -- just what I'm noticing at first):
- Channels API (allows Asyncronous Sockets!) -- no more waiting forever until a timeout, or blocked IO. Cool stuff!
- Logging API -- it won't be as good as Log4J, but they'll get it someday
- NewIO -- don't know what it is, but it looks cool -- this is the Channels API, and facilities for supporting raw buffers and "memory mapped" files
- Regular Expression Parser -- check this out! They add some propriatary symbols (words in brackets), but who cares?
- XML parsers, DOM and SAX -- we all knew this was coming anyway, but it's cool
- Preferences API -- no more propriatry config files. JRE has one everybody can use (it's based on XML)
- More Drag and Drop support -- we've all been waiting for built in drag'n'drop on JTrees and the like!
- Kerberos support -- why? I don't know. I'll never use it, but it might be fun for some people
- Stack trace tinkering -- You get a lot of .printStackTrace(), but now theres a .getStackTrace()!
- A new keyboard-focus model for the AWT (which hopes to resolve a bunch of issues that there used to be with keyboard focus management)
- The ability for AWT applications to run full-screen and set the graphics mode
- A printing API for servers (so they don't have to have the AWT in order to print)
- Exceptions can now wrap other exceptions (so if you're throwing a new exception as a result of an old exception, you can wrap the old one inside the new one as a "cause")
What Sun has to say:
A Beta release of the Java[TM] 2 Platform, Standard Edition version 1.4 software for Windows, Linux, and Solaris[TM] is now available to the Java community!
Java 2 Platform, Standard Edition (J2SE[TM]) software is the premier solution for rapidly developing and deploying mission-critical, enterprise applications. Version 1.4 builds upon Java technology's cross-platform support and robust security model with new features and functionality, enhanced performance and scalability, and improved reliability and serviceability. Version 1.4 advances rich client application development and provides the foundation for standards-based, interoperable Web services that can be built and deployed today!
- New features in Java Foundation Classes/Swing, Java[TM] Web Start, Java[TM] Plug-in, and internationalization enable rich clients for Web services.
- Enhanced connectivity via XML, CORBA, IPv6, and JDBC[TM] 3.0 technology.
- New security features including Java[TM] Secure Socket and Java[TM] Cryptography extensions, Java[TM] Authentication and Authorization Service, Kerberos support, and a Certificate Path API.
- High-performance Java 2D[TM] graphics, 64-bit Support, new scalable I/O, and Java virtual machine improvements.
- New Simple Assertion facility, Logging APIs, and better handling and reporting of low resource conditions and errors make J2SE software the most reliable, available, and serviceable platform for your mission-critical applications and Web services.
- Localization of the JRE into ten languages (Simplified and Traditional Chinese, English, French, German, Italian, Japanese, Korean, Spanish, Swedish) on all platforms as well as localization of the SDK into two languages (English and Japanese).
In addition to new features, version 1.4 addresses key customer issues and is fully compatible with previous J2SE software releases.
It's great that they've added these features, but as usual it's pretty brutal figuring out how to use this stuff. The nio packages, for example, provide important functionality but it's clear whoever wrote them didn't care much for naming things well. NewIO? C'mon, was there really no better name for it than that? And then did it really need to be shortened to nio? Sad to say, java.io2 would have been better. At least people would have immediately understood what was going on.
CategoryJava