为什么主方法中没有调用paint方法,但是却完成了其中的操作?求解释!

Java,短短的代码,小小的问题,为什么主方法中没有调用paint方法,但是却完成了其中的操作??package 贯穿项目界面设计;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class 测试线线1 extends JFrame{
public static void main(String[] args) {
new 测试线线1();
}
public 测试线线1(){

setSize(500,500);
setVisible(true);

}
public void paint(Graphics g)
{
g.drawLine(30,170,450,170);
}
}

白衣非少年
浏览 232回答 2
2回答

大话西游666

paint是给系统呼叫的; setVisible会手动触发系统, 来呼叫paint.每个部件会有自己的绘制方法, 系统根据需求, 移动/大小变化/新增删除等, 会自动去呼叫相关的paint, 来维持视窗画面.

吃鸡游戏

逐级向上看源码,JFrame继承Frame,Frame继承Window,Window中定义了paint方法,所以你是重写了Window中的paint()方法。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java