I would guess many more executions than 1000 would be needed to show a performance difference. On my rather old pc I can execute 60,000,000 method executions in 1 second (a noop method call), and referencing a variable should be much faster than that! That is why we say the question is purely academic.
Being as referencing instance varable/local variables would both be so fast it would be hard to accurately measure a performance difference with the much more expensive
string concatenation in the loop. For example the garbage collector or some other process on the computer may fire during one or the other of the routines and make the comparisons meaningless. I would avoid all the object allocation that is done in this example.
Also, even if you measure a performance difference I suspect it may be different in another JVM, or on another platform. So your new found knowledge may be very transient.