View Full Version : The various versions of Java
sans-hubris
08-06-2002, 04:47 PM
I'm curious as to how much the Java language has changed from 1.0 to now. Are those changes just API changes, or are there actual changes to the language itself (i.e. syntax, semantics, keywords, etc.)?
Dru Lee Parsec
08-06-2002, 05:27 PM
Oh My Gosh, what a lot of changes. Here's a few:
1.0 to 1.1 : completly new event handling model
1.1.x to 1.2: The entire Swing library of GUI components was made part of the core language instead of an additional library.
The addition of Swing to the core language made the java.awt library Almost (but not quite) useless. We still use classes like Font and Color from that library.
In 1.2 a whole new printing system was instituted. I believe a whole new Java Help system was installed in 1.2 as well.
1.3 was mainly bug fixes and speed upgrades. I'm going blank on truely new functionality right now although I know there was some.
1.4 gave us full screen exclusive mode, Java logging (essentially Log4j), new ways of handling properties, and some more Swing upgrades (as well as lots of other changes).
So yeah, I'd say that Java has grown. But I've only mentioned the core API. The other API's like Java servlets, Java server pages (JSP), Java Enterprise Edition (J2EE) and so on have changed quite a bit as well. There's not too many places where the change wasn't backwards compatible though. Although the change from JSP 0.9 to 1.0 was pretty huge and not backwards compatible. But that's probably forgivable since it was a movement to a 1.0 release.
Over all it's mainly been API changes. The core language still works the same as it always has. There's still if statements, while loops, for loops, switch statments, inheiritence and implementation and so on.
Isengard
08-07-2002, 08:42 AM
Java is backward compatible yes, but you get a warning message saying you're using a deprecated class if you try and access some of the old ones.
sicarius
08-07-2002, 11:23 AM
I think one of the best things about the new 1.4 API is the new I/O classes, and also the speed increases that they made to the old ones.
This might be a semantic issue Dru, but do really consider Swing to be part of the core language? To me the only stuff in the "core" language are those classes defined in java.lang. I realize that the addition of swing to the java universe is a major event, and one that was well worth waiting for, but it didn't really change the language per se. I'm not trying to start an argument, just expressing a different view.
Dru Lee Parsec
08-07-2002, 01:00 PM
Java is backward compatible yes
Although I reported a very obnoxious "bug" in 1.4 where the scroll policy for a JTabbedPane in now "make it scrollable". That means that a program (Like Jext from www.jext.org) that has a bunch of tabs up will show all the tabs in 1.3 and show a scrollable set of tabs in 1.4. However, if you add the code to make the tabs non-scrollable then the code is not backwards compatable to 1.3.
This means that you would have to require all your customers to upgrade to 1.4 just so that you can make sure that their user experience DOESN'T change.
This might be a semantic issue Dru, but do really consider Swing to be part of the core language?
Hmm. I see your point. When I said "core" I guess what I meant was "classes that are defined in rt.jar". This would be as opposed to stuff that's in servlet.jar or mail.jar or j2ee.jar and so on.
vBulletin® v3.7.0, Copyright ©2000-2009, Jelsoft Enterprises Ltd.