The Mac OS X ships with a Java runtime and development environment already installed. This version of Java is akin to the version released by Sun except that it is configured by Apple to be tightly integrated with the Mac OS X.
Java for Mac OS X
The version of Java that is pre-installed on the Mac OS X Leopard is JS2E 1.5. This version can be updated through the automatic software updater to Java SE 6.
Relating the Java for Mac OS X version with the standard Java versions can be confusing. Apple updates are not synchronized with the releases from Sun, leaving Mac users playing catch up with the versions of Java on other operating systems. See the table at the bottom of this article for an approximate version correlation of Apple releases and the Java J2SE 5.0 and Java SE 6 versions.
Updating the Java Environment
New versions of the Java for Mac OS X are automatically available through the software updater. To keep the Java environment up to date simply choose to download and install the updates when prompted.
If for some reason you need a manual installer for a Java for Mac OS X update they can be found on the downloads page of the apple developer site.
Switching Between Different Java Versions
Once an updated version of Java has been installed on the Mac OS X it cannot be uninstalled. However, if you want to choose an earlier version to run with applets and applications, use the Java Preferences application that can be found in Applications -> Utilities - > Java -> Java Preferences using Finder. Under the General tab, simply drag the version you want to the top of the list.
As the Java for Mac OS X environment is built specifically by Apple there is a guide for developers that covers deployment options, differences in the core API and interface toolkits, and tips for giving your applications a Mac feel.
J2SE 5.0 and Java SE 6 on the Mac OS X
|Mac OS X||Release||Java Version|
|10.5||Update 4||Security update to 1.6.0_13. Does not include functionality from 1.6.0_10.|
|10.5||Update 3||Some of the security fixes equivalent to 1.6.0_11 included. Does not include functionality from 1.6.0_10.|
|10.4||5.0 Release 4||1.5.0_06|
|10.4||5.0 Release 3||1.5.0_05|
|10.4||5.0 Release 1||1.5.0_02|
Note this table does not track the security baseline updates to the earlier versions of Java and the Sun versions listed are rough equivalents. The Mac version might not hold all the same functionality or security fixes contained within the Sun version.