这些都是个人的理解 而且没有百度 所以错误 会很多 。。。。
接口是什么?
接口 也是一种Class 接口是一种特殊的Class (因为它不可以直接创建对象)
接口 中的方法都是没有方法体的 比如:如:public void ActionListener();
没有方法体的方法:没有方法体的方法就是抽象方法 ;
接口 是一个抽象类 ;
抽象类:一个类中有一个抽象方法那它就是抽象类;
为什么 我要用接口? 我个人觉得原因有两个;
(原因一)接口它往往只考虑我需要做什么 更不容易出错
抽象类往往是绝对正确的 个人认为它其实也是面向对象的精髓之一;
(原因二)接口可以大量的减少重复代码更重要的是让程序员思路清晰不容易混淆
public class MyMouseListener implements MouseListener,MouseMotionListener,ActionListener,KeyListener{
//复写MouseListener的抽象方法
public void mouseClicked(MouseEvent arg0) {System.out.println("鼠标按键在组件上单击(按下并释放)时调用。");}
public void mouseEntered(MouseEvent arg0) {System.out.println("鼠标进入到组件上时调用。");}
public void mouseExited(MouseEvent arg0) {System.out.println("鼠标离开组件时调用。");}
public void mousePressed(MouseEvent e) {System.out.println("鼠标按键在组件上按下时调用。");}
public void mouseReleased(MouseEvent e) {System.out.println("鼠标按钮在组件上释放时调用。");}
//复写MouseMotionLisetner的抽象方法
public void mouseDragged(MouseEvent e){System.out.println("鼠标按键在组件上按下并拖动时调用");}
public void mouseMoved(MouseEvent e){System.out.println("鼠标光标移动到组件上但无按键按下时调用");}
//复写ActionListener的抽象方法
public void actionPerformed(ActionEvent e){System.out.println("发生操作时调用");}
//复写KeyListener的抽象方法
<code></code>public void keyPressed(KeyEvent e){System.out.println("按下某个键时调用此方法");}
public void keyReleased(KeyEvent e){Ststem.out.println("释放某个键时调用次方法")};
public void keyTyped(KeyEvent e){Ststem.out.println("键入某个键时调用此方法");}
}
在实例化监听器的时候代码也会不同 MyMouseListener button_mouseListener=new MyMouseListener(this);