日期:2014-05-20  浏览次数:20777 次

请帮我看一下这个程序好吗?

  import   java.awt.*;  
import   java.awt.event.*;  


public   class   TankClient   extends   Frame{  


public   void   paint(Graphics   g)   {  
Color   c=g.getColor();  
g.setColor(Color.RED);  
g.fillOval(100,100,   20,   20);  
g.setColor©;  

}  

public   void   lauthFrame()   {  
this.setLocation(100,100);  
this.setSize(800,600);  
this.setVisible(true);  
this.setTitle( "112233 ");  
this.setResizable(false);  
this.addWindowListener(new   WindowAdapter()   {  
public   void   windowClosing(WindowEvent   e)   {  
System.exit(0);  
}  
});  

}  


public   static   void   main(String[]   args)   {  

TankClient   tc   =   new   TankClient();  
tc.lauthFrame();  


}  

}  


这个程序   中的paint方法   在那里被调用的????         多谢了     我刚开始学java   可能这个问题很弱智       但也请告诉我       多谢了    
 
 


------解决方案--------------------
tc.lauthFrame();之后
你可以用断点调试一下,或加几个system.out语句就可以很清楚的看出来.
------解决方案--------------------
面向对象中讲到的封装和继承,paint()方法从Frame类里继承而来,覆盖了Frame类的paint()方法,awt线程会不时的去调用它的repaint()方法,然后通过调用update()方法清空窗口的内容,然后进而调用paint()方法,面向对象不用知道底层的实现,即不用去管细节问题,只要完成了你的功能即可,呵呵!