0

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

第一个 getParent() 调用是否引用了作为 Applet 的 StartingClass 的父级?第二个 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");
    }
4

1 回答 1

1

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

这是AppletViewer类的声明

public class sun.applet.AppletViewer extends java.awt.Frame ...

这就是为什么你可以沮丧AppletViewer地进入Frame.

我认为,您正在将getParent()方法与inheritence. 这里的parent意思the parent container of this component不是组件的直接超类。

有关更多信息,请查看Component#getParent()

于 2014-04-15T20:06:58.503 回答