2014-02-14 43 views
0

好的,如果我添加一个Window Listener到一个JFrame,我可以添加一个新的WindowAdapter()作为一个抽象类,然后覆盖我想要的特定方法,以便我可以向它们添加功能,例如windowClosing()WindowAdapter是一个抽象类,它是接口WindowListener的默认实现,并且WindowListener扩展为EventListener;所有这些都是相当空的,只是定义方法名称,但没有真正的代码。有人可以帮助解释抽象类WindowAdapter的工作原理吗?

所以我的问题是,它在哪里定义根默认行为是什么? X按钮与windowClosing事件绑定在哪里? windowClosing事件定义在哪里?

我猜想是什么让我想要更好地理解抽象类,接口和子类,也许我试图解析的例子有点太复杂。

回答

3

X按钮绑定到windowClosing事件的位置在哪里? windowClosing事件在哪里定义?

简而言之,不要担心这是在什么地方特别定义的 - 它都是在Swing内部事件机制中设置的,它不是您最需要担心的最终用户。

有人可以帮忙解释抽象类WindowAdapter的工作原理吗?

WindowAdapter就像您所说的那样,是“默认实现”WindowListener。所有这一切意味着它将每一种方法实现为一个空白方法,所以你只需选择覆盖你所需要的方法。这纯粹是为了方便,为了节省您不必每次定义一堆你不用或不在意的空方法,例如,想要设置一个侦听器来在窗口关闭时触发。

+0

我如何才能找到代码为windowClosing事件只是好奇?我想看看它是如何编码在秋千 –

+0

谢谢 - 这是我的理解,但与托马斯相似,我很好奇,看看如何编码完成的事件和看到它们都结合在一起。我现在已经掌握了实现接口和扩展类与抽象类想法之间的区别,我只想知道如何知道何时应该使用它们。 –

相关问题