Here is the byte-code dump of the class file. Note the lines in
bold face which substantiate the argument the call to run() is resolved using a static reference.
Method void main(java.lang.String[])
0 invokestatic #8 <Method N me()> --> same as N.me();
3 pop
4 invokestatic #11 <Method void run()> --> same as N.run()
7 return
Method N me()
0 getstatic #9 <Field java.io.PrintStream out>
3 ldc #1 <String "ME">
5 invokevirtual #10 <Method void println(java.lang.String)>
8 aconst_null
9 areturn
Method void run()
0 getstatic #9 <Field java.io.PrintStream out>
3 ldc #2 <String "RUN">
5 invokevirtual #10 <Method void println(java.lang.String)>
8 return
The proof is in the pudding
Ajith
[This message has been edited by Ajith Kallambella (edited August 15, 2000).]