关于WindowAdapter的使用的一点疑惑

在我们给java做的图形界面添加关闭事件的时候,使用了WindowAdapter这个类,比如:Framewindow=newjava.awt.Frame("windows... 在我们给java做的图形界面添加关闭事件的时候,使用了WindowAdapter这个类,
比如:
Frame window = new java.awt.Frame("windowsTest");
window.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
在这里面,WindowAdapter不是一个抽象类么,为什么能被new呢,并且WindowAdapter 里面有很多冲向方法,为什么只实现了windowClosing,没有实现其他的方法不会报警告呢编译的时候,如果这个地方是做为内部类来使用的话,那我在选中“WindowAdapter”的时候按F3查看定义的时候,为什么会跳转到java包里面的抽象类去了呢?这里到底是做为一种什么样的方式使用的呢这个类?请教高手。。。
问题里面说错了一个词,是抽象方法,不是冲向方法,呵呵。。。抱歉
展开
 我来答
hitzsf
2011-06-22 · TA获得超过2060个赞
知道大有可为答主
回答量:1741
采纳率:78%
帮助的人:1164万
展开全部
呵呵,匿名内部类的用法,
适配器实现了所有的接口方法,不过是空方法非抽象方法,在其子类中只要覆盖感兴趣的方法就行。这是一种设计模式,适配器设计,因为要实现所有的接口方法,数量实在太多了,有点不方便,才采用这种过渡类。
不过有些问题我的确也没有搞明白 抽象类咋就能用new了呢,这个问题真的好尖锐,搞不明白啊
====================================
查了一下资料,发现抽象类是允许有构造函数的
追问
哦,不好意思,昨天我看错了,WindowAdapter里面的方法都不是抽象方法。你说的也对,匿名内部类的写法,里面new 后面写的名称是这个匿名类所实现的接口或者父类,返回的是匿名类对象,呵呵,我明白了,谢谢了啊!~
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式