关于接口为内部时和为外部时的区别与联系
来源:互联网 发布:淘宝能寄到国外吗 编辑:程序博客网 时间:2024/06/05 00:50
首先说明,无论接口是在类内部还是外部,都需要覆盖接口定义的所有方法。
至于原因就去查看java教材关于接口的那一章讲解。
一、当接口为内部时,在类的头部即public class YY 后不必写implements XX-interface
如:
public class J_Panel extends JPanel{ public J_Panel() { addMouseListener(new MouseListener() { public void mouseExited(MouseEvent e) {} public void mouseClicked(MouseEvent e) {} public void mouseEntered(MouseEvent e) {} public void mousePressed(MouseEvent e) {} public void mouseReleased(MouseEvent e) {} } ); // end of addMouseListener addMouseMotionListener(new MouseMotionListener() { public void mouseMoved(MouseEvent e) {} public void mouseDragged(MouseEvent e) {} } ); // End of addMouseMotionListener } // End of the conductor of J_Panel protected void paintComponent(Graphics g) { } // End of the function of paintComponent}
注:若写上了implement MouseListener,
二、而当接口为外部时,必须在类的头部即public class YY 后写上implements XX-interface
如:
public class ScribblePanel extends JPanel implements MouseListener, MouseMotionListener{ public ScribblePanel() { // Register listener for the mouse event addMouseListener(this); addMouseMotionListener(this); }// interface MouseListener public void mouseClicked(MouseEvent e) {} public void mouseEntered(MouseEvent e) {} public void mouseExited(MouseEvent e) {} public void mouseReleased(MouseEvent e) {} public void mousePressed(MouseEvent e) {} // interface MouseMotionListener public void mouseDragged(MouseEvent e) {} public void mouseMoved(MouseEvent e) {}}
0 0
- 关于接口为内部时和为外部时的区别与联系
- 关于检测手机内部存储的方法(以内置存储空间几乎为0M时添加联系人为例)
- 何为内部排序和外部排序?
- JDK与JRE内部的一些区别和联系
- java:内部类与外部类的区别和联系
- 内部存储与外部存储的区别
- 抽象类和接口的区别与联系
- Java中的抽象类和接口的区别与联系
- 再论接口和抽象的联系与区别
- 接口与抽象类的区别和联系
- 抽象类和接口的区别与联系
- 数字接口SPI和I2C的区别与联系概述
- Java中的抽象类和接口的区别与联系
- C#中抽象类和接口的区别与联系
- Java中接口和抽象类的区别与联系
- 抽象类和接口的区别与联系
- 接口和抽象类的区别与联系
- 接口与抽象类的区别和联系
- 抽象工厂模式的理解
- 资产管理
- list相关的函数
- [iOS-test]关于Xcode测试
- springmvc Jsp页面向后台传递中文参数乱码问题
- 关于接口为内部时和为外部时的区别与联系
- HDU - 1241 - Oil Deposits
- CI项目架构(4)---模块化
- Cocos2dx.3x入门三部曲-Hello Game项目创建(二)
- HTTP状态码(HTTP Status Code)
- codevs1051
- android自定义控件
- 欢迎使用CSDN-markdown编辑器
- mybatis的dao接口实现小结