感觉好象差不多,是吗?

解决方案 »

  1.   

    看源代码,paintComponent 被 paint 调用。
      

  2.   

    他们都响应repaint()方法调用吧??
      

  3.   

    repaint 通知 AWT 线程要求重新绘制界面图像,AWT 线程会去调用 paint 方法再由 paint 在内部调用 paintComponent 方法完成组建重绘。
      

  4.   

    一般来说当你想在AWT组件上进行绘制时,你可以重新实现paint函数,像我们在Applet   Canvas上绘制,需要实现paint函数   
      如果想在Swing组件上进行绘制,我们往往重新实现paintComponent方法(这个方法AWT组件没有),在需要刷新的时候系统会调用paint函数,paint函数内部又调用paintComponent函数(paint内部一共会调三个,还有一个负责边框绘制,还有一个忘了)   
        
      AWT上的绘制默认不支持双缓冲,而Swing组件默认支持