当我在编写Applet时初始化paint()中的变量时,为什么需要init()方法

时间:2015-08-08 20:48:38

标签: java applet

我是编程和Applet的新手。 在我的书中提到,init()方法应该用于初始化变量,每次输出需要在屏幕上重绘时调用paint。

但是下面的代码工作得很好。为什么需要init()呢?

import java.applet.*;
import java.awt.*;

/*
<applet code = "demo" width = 500 height = 600>
</applet>
*/

public class demo extends Applet{
    String msg;
    public void paint(Graphics g){
        int x = 45;

        msg = "Inside paint-----" + x;
        g.drawString(msg, 20, 20);
    }
}

1 个答案:

答案 0 :(得分:0)

每次需要重绘屏幕时都会调用

paint

只有在进行一些初始化时才会调用

init

因此,可以在paint中进行工作,但是它会被重复调用,因此在某些情况下成本会很高。

关键是要确定每次调用{app}时,applet需要执行一次初始化工作的费用是否过多,并根据此设计您对方法的使用。

快速网络搜索后,this似乎是一个很好的概述。