以下のコードを書いてみた
public class Test {
static i = 0;
public static void main(String[] argv) {
preinc();
postinc();
}

public void preinc() { ++i; }
public void postinc() { i++: }
}

でjavac Test.java
javap -c Test
したらどっちも一緒だった
jad Test.classしたら両方ともi++に直されていた

ということでjavaでは++iもi++も最適化がかかり同じものとして
扱われるということですね
間違ってたら指摘して下さい・・・