Java code optimisations are applied during runtime as the Hotspot VM sees fit. (As far as I know, this involves keeping track of method invocation counts and compiling frequently called methods into native code and trying several types of optimisations as well.)
The only remotely connected switch you can use with javac is -g:none which tells the compiler to omit debug information: this doesn't really affect the performance of your code but it decreases the size of the .class files.
When you start the VM though, you have a choice between -server and -client options, which will affect the range of optimisations and how early they kick in.