重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
ParserAdapter,MouseInputAdapter....
创新互联公司专注于企业全网整合营销推广、网站重做改版、墨江网站定制设计、自适应品牌网站建设、H5高端网站建设、购物商城网站建设、集团公司官网建设、外贸营销网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为墨江等各大城市提供网站开发制作服务。
interface can be added to an existing class or used to create an adapter
方法就是 面向结构语言的:函数
java中适配器的作用实际上是实现了接口的类,但是适配器所实现的只是空方法。因为如果我们不用适配器,直接去实现接口,也要逐个实现里面的方法,并且大多情况下我们也会像 jdk里适配器所做的:仅仅以空方法去实现,只实现对我们有用的方法。
几乎所有申明了很多方法 的接口,都会有它自己的 适配器类。
本身adapter没有什么作用,只是帮助程序员专注 所实现的功能,使代码简洁罢了
你可以查一下jdk:
java.awt.event.KeyAdapter
All Implemented Interfaces:
KeyListener, EventListener
它里面的方法:
void keyPressed(KeyEvent e)
Invoked when a key has been pressed.
void keyReleased(KeyEvent e)
Invoked when a key has been released.
void keyTyped(KeyEvent e)
Invoked when a key has been typed.
都是空方法
你说重写的方法不对,把
public void windowAdapter(ActionEvent e)
{
System.exit(0);
}
换成:
public void windowClosing(WindowEvent e) {
dispose();
}
抽象类java.awt.event.MouseAdapter实现了MouseListener接口可以使用其子类作为MouseEvent的监听器。只要重写相应的方法即可。
java中适配器的作用实际上是实现了接口的类,但是适配器所实现的只是空方法。因为如果不用适配器,直接去实现接口,也要逐个实现里面的方法,并且大多情况下也会像 jdk里适配器所做的:仅仅以空方法去实现,只实现有用的方法
几乎所有申明了很多方法 的接口,都会有它自己的 适配器类
本身adapter没有什么作用,只是帮助程序员专注 所实现的功能,使代码简洁罢了
例如:jdk下的
java.awt.event.KeyAdapter
All Implemented Interfaces:
KeyListener, EventListener
它里面的方法:
void keyPressed(KeyEvent e)
Invoked when a key has been pressed.
void keyReleased(KeyEvent e)
Invoked when a key has been released.
void keyTyped(KeyEvent e)
Invoked when a key has been typed.
都是空方法
你的this指错了对象把。。错误提示你指向的不是窗口而是一个监听适配器!把this修改成你的窗口对象名就行了。
一般的情况下,我们要实现一个接口interface ,就需要实现它所有申明了的方法。
但是我们在很多情况下不愿意吗每次实现这个接口的时候就重写它所有的方法,因为这样很浪费时间,并且没有做到代码复用。
所以就有了适配器。
适配器本身已经实现了接口所有的方法,这样,你继承了这个适配器之后,只需要重写你想要重写的方法,而不需要重写所有的接口方法。
适配器在减少了你的代码量的同时,实现了所有的接口函数,保证了对外接口的一致。