请问下面的this指的是什么?
public class Tribody extends JApplet implements Runnable{
  int mode=0;
int cnt=500;
Ball[] balls = new Ball[cnt];
double mx= this.getSize().width/2;
double my= this.getSize().height/2;
int step= 10;
}

解决方案 »

  1.   

    指的是Tribody这个类的实例。double mx= this.getSize().width/2; 这句话在Tribody被new的时候执行。话说,楼主对《三体》很有兴趣?
      

  2.   

    个人理解:(表达未必准确,希望有助于理解)就是将要产生的这个类Tribody的对象。
    如Tribody t1=new Tribody();  在这是时,this 就相当于t1.
    如Tribody t2=new Tribody();  在这是时,this 就相当于t2.
    如Tribody t3=new Tribody();  在这是时,this 就相当于t3.
    ......
    总之,这个this 就是将要产生的那个对象本身。 
      

  3.   

    this指向当前类的对象
    也可以说当前的类(Tribody类) 的引用  类似于指针的概念 当然java是没有指针的 
      

  4.   

    话说,楼主对《三体》很有兴趣?
    -------------
    是啊,但我觉得三体设计得还是不够好,所以研究它并希望每一步改进它,让它更有娱乐性和观赏性。
    我完全是JAVA的新手,以前使用rebol(www.rebol.com),并利用这种语言设计出了一个模拟星系运转的游戏,可惜rebol的运行速度太慢,在图形方面有很大的缺陷,所以就希望使用一种高速的语言重新设计这个游戏。
    很感谢各位对我的帮助。
      

  5.   

    double mx= this.getSize().width/2; 这句话在Tribody被new的时候执行。
    ---------
    但前面我根本没有定义Trobody的幅面大小,究竟程序怎么知道trobody的幅面大小呢?
      

  6.   

    this 就是当前类实例化的对象 
      

  7.   

    大哥,你的程序语句怎么也得也在方法中吧。this是每个方法的隐含参数,当你每次通过一个对象调用其方法时,该对象会通过参数的形式传入该方法中。比如this.getSize()编译完成之后,就会变成_getSize(Object this)。