You could check the environment variables for JAVA_HOME, J2EE_HOME, etc.
In windows, you can look in the registry:
\\HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoct\Java Runtime Environment\1.4\JavaHome
Replacing, of course, 1.4 with the version you're looking for (1.4.2_04 for example)
If you're RUNNING java already - use the System.properties
see http://java.sun.com/docs/books/tutorial/essential/system/properties.html
You want the property "java.home"
+Michael
If it's a windows machine, you can look in the registry.
Each version will have its own branch in the registry tree.
Mine looks like this
\\HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\1.4
\\HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\1.4.2_04
\\HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\1.5
\\HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\1.5.0
\\HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Plug-in\1.4.2_04
\\HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.4
\\HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.4.2_04
\\HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Web Start\1.01
\\HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Web Start\1.0.1_02
\\HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Web Start\1.0.1_03
\\HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Web Start\1.0.1_04
\\HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Web Start\1.0.2
\\HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Web Start\1.0.2.0_01
\\HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Web Start\1.4.2_04
Each branch has a key named "Home" and a value that is the install directory.