如何在不扩展Applet的情况下使用applet方法?

时间:2011-12-29 19:08:08

标签: java applet

我正在慢慢地想办法让Java做我需要的各种方法,但是在尝试编写类似画布的类时我遇到了一个问题...

在我的班级中,我致电createImage(myMemoryImageSource);repaint();,试图从我的applet的主“运行”方法中删除复杂性。

尽管包含java.awt.*java.awt.image.*java.applet.*,但除非从 Applet 扩展,否则此类将无法编译。我的类实际上只是一个canvas类,所以我更喜欢它不扩展Applet。

我是否错过了一个重要的内容,或者我对如何实现自己的画布课程有一个严重的误解?

2 个答案:

答案 0 :(得分:0)

如果您不打算继承子类,那么您将需要一个可以调用所述方法的实例。此外,按照惯例,如果您要自定义组件,最好将其子类化。

示例 -

final class Foo extends JFrame{
    Foo(){
        super("Foo Frame");
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        .
        .
        .
    }
}

final class Foo{
    private final JFrame frame;
    Foo(){
        frame = new JFrame("Foo Frame");
        frame.setDefaultCloseOperation(EXIT_ON_CLOSE);
        .
        .
        .
    }
}

答案 1 :(得分:0)

您只需要从Canvas扩展您的课程。