Comments
 
You can compile for older versions of the JRE by setting the compiler target compliance level. This allows you to generate class files that are usable on older versions of the JRE as well as the current one.

From your IDE, you will be able to select the compliance level, but if you're compiling manually using javac, this can be done by setting the appropiate command line parameters: -source and -target.

For example, to compile for JRE 1.6, do this:

javac -source 1.6 -target 1.6 MyClass.java

A quick explanation:

-source sets the source compatibility to the specified version, and ensures that your code is usable on the specified JRE.

-target specifies the compliance level o  ...