有点奇怪的代码

jiojralf 2007-08-02 12:41:05
aframe.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
})
为什么可以在函数参数里面实现另一个函数?WindowAdapter是一个抽象类,这中写法我不知道是什么意思
...全文
255 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
iisbocai 2007-08-03
  • 打赏
  • 举报
回复
匿名类
qizhe6783 2007-08-03
  • 打赏
  • 举报
回复
应该是定义一个匿名类去实现windowAdapter

interface a{public void aa();}
class b implements a{public void aa(){}}
addAction(new b());
再使用b去当作监听类一个意思,就是哪个类并不是可见类名的
jiojralf 2007-08-03
  • 打赏
  • 举报
回复
to 1991
如果写到main所在类外面就不是该类的子类了
貌似没有办法了
jiojralf 2007-08-03
  • 打赏
  • 举报
回复
虽然子类new的问题没解决,还是谢谢大家
薛定谔之死猫 2007-08-02
  • 打赏
  • 举报
回复
继承该抽象类,重写它的方法,这是匿名的类
zheng376 2007-08-02
  • 打赏
  • 举报
回复
函数的参数是一个对象,
括号里的是新生成对象的方法
new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
}
相当于新定义的类,直接实例化了,
infon 2007-08-02
  • 打赏
  • 举报
回复
匿名内置类
mysoko 2007-08-02
  • 打赏
  • 举报
回复
System.exit(0);

无条件退出。!
joejoe1991 2007-08-02
  • 打赏
  • 举报
回复
这样哦,有点懂了。还有一个问题,有什么方法可以让非静态子类在main中new呢?
======================================================================
把类写到main所在类的外面就行了
jiojralf 2007-08-02
  • 打赏
  • 举报
回复
这样哦,有点懂了。还有一个问题,有什么方法可以让非静态子类在main中new呢?

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧