The Top 10 Unused Features in Java

DZone 's Guide to

The Top 10 Unused Features in Java

· Java Zone ·
Free Resource

10) const, goto
What? Yes, they are Java keywords. But they do nothing.

9) Some Java flavors
Such as Personal Java, JavaOS.

8) Indexed Jars
Indexed Jars are jar files containing a special index file (META-INF/INDEX.LIST) indicating which packages are in the jar. With Ant it's index="true". Its purpose is to speed up classloading and enable lazy loading of Jar files for Applets and Webstart Applications.

7) Most of the exe files in the bin directory
Such as javah.exe, javadoc.exe, jdb.exe, jar.exe.
They have been replaced by Ant or Maven and IDEs.

6) Applets
Popular 10 years ago, they saw their popularity going down since. But they will make a come back with Java SE 6 update 10.

This API would probably win the vote among developers on "which API do you want to remove from Java?".

4) javax.accessibility and accessibility
This package exists since Java 1.2 but is not that much used. On one hand it's true that Swing will do a lot for you but one the other hand it won't do everything. Especially empty text fields and text areas need to be annotated.

3) Midi library
Yes, Java has midi build in it. So Java can play music since 1.1. At the time they added a sound bank so the music quality would sound better. Now the sound bank doesn't sound that nice compare to sound cards.
Most of time when talking about the modular JRE, CORBA is often named as the library that won't need to be downloaded, but the sound bank is probably the bigest win.

2) Java 6 API
Here is mostly Apple to blame because they decided not to support Java 6 for 32 bits platforms, a lot of API's and programs are blocked at the Java 5 level.

1) Assertions
In Java 1.4 Sun added assertions. Well I remember at the time there was a few talk about Java missing assertion/pre/post conditions. So this feature was added.
Let's face it, it's not often used.

From  http://www.jroller.com/agoubard


Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}