小弟最近在看Deitel家族写的<<Java How To Program>>,在此书的第7章的7.9案例中,我有一个小疑惑,我把问题简化如下:
public class Test extends Applet{
     
     public void init()
     {
          String a = "10";
     }     
     public void paint( Graphics g )
     {
          g.drawString( a );
          a = "20";
     }
}
这里明明是先输出,再赋值为"20",为什么书中截屏的屏幕上输出的时"10"呢?我自己用appletviewer打开,一开始时输出的是"10";刷新一下就是"20"了.这点我可以理解,但是原书的截屏,为什么就时"20"呢?原作者如果为了输出"20",按逻辑来说,他应该把赋值语句放在输出语句之前才对啊!是不是我对paint()这个方法的原理内涵理解有什么问题?还是原作者用的编译器和我的不同?请大侠们为我指点迷津!!!!!