方法调用问题

kingofs 2005-10-25 11:31:28
import java.awt.*;
import javax.swing.*;

public class Pascal extends JFrame {
public Pascal() {
setBackground(Color.white);
setTitle("巴斯卡三角形");
setSize(520, 350);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
show();
}



public void paint(Graphics g) {
//略过...
}

public static void main(String args[]) {
Pascal frm = new Pascal();
}
}

上面的程序可以正常运行,想问paint方法是怎么被构造函数的show()调用的啊?
...全文
111 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
skycncomp 2005-10-25
  • 打赏
  • 举报
回复
paint应该是回调吧.不需要你调用的.
在需要重绘的地方JVM会自动调用的.
treeroot 2005-10-25
  • 打赏
  • 举报
回复
GUI painting is a complex procedure!
You can refer to the source code of AWT/SWING,but i suggest you read some
documents on www.sun.com!
kiteprince 2005-10-25
  • 打赏
  • 举报
回复
1.Pascal frm = new Pascal();
在JVM中内存分配一块空间给这个对象
2. setBackground(Color.white);
setTitle("巴斯卡三角形");
setSize(520, 350);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
是对已经存在的对象进行“加工”
3.show();
是一个动做
你也可以理解成,你的房子的一个房间里造车,并且给车子涂了油漆,取了名字,如果不拿出来show()一下,谁能够看到你的成功呢!?
呵呵
ianok 2005-10-25
  • 打赏
  • 举报
回复
up
kingofs 2005-10-25
  • 打赏
  • 举报
回复
回楼上的:但是如果去掉show(),图形是显示不出来的。
是不是说jvm调用paint后,图形已经绘制好了,只是不显示出来,而show()是起调出窗口显示的作用?

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧