了解Java applet的getParent方法

时间:2014-04-15 20:01:29

标签: java applet appletviewer

我正在尝试使用继承自Applet类的类的教程。我很难掌握创建框架对象的线的概念。我不确定2个getParent()调用是做什么的。

第一个getParent()调用是否引用了StartingClass的父类,即Applet? 第二个getParent()调用是否引用了Applet的父级Panel?

我认真地认为我看错了,我正在寻求澄清。

public class StartingClass extends Applet implements Runnable {

    @Override
    public void init() {

        setSize(800, 480);
        setBackground(Color.BLACK);
        setFocusable(true);
        Frame frame = (Frame) this.getParent().getParent();
        frame.setTitle("Q-Bot Alpha");
    }

1 个答案:

答案 0 :(得分:1)

第一个getParent将返回sun.applet.AppletViewerPanel,第二个将返回sun.applet.AppletViewer

以下是AppletViewer class

的声明
public class sun.applet.AppletViewer extends java.awt.Frame ...

这就是为什么你可以将AppletViewer转发为Frame

  

我认为,您正在将getParent()方法与inheritence混合使用。这里parent表示the parent container of this component不是组件的直接超类。

有关详细信息,请查看Component#getParent()