1、  接口可以看做是抽象类的特例。抽象类中可以定义抽象方法,也可以定义具体方法。但接口只能定义抽象方法。所有接口可以看作行为的抽象。定义接口使用关键字interface,实现接口使用关键字implements。

2、  如果一个方法用父类变量作为参数,那么可以传递任何一个子类对象。如果一个方法用接口变量作为参数,那么可以传递任何一个实现类对象。(多态)

3、  接口中只能定义抽象方法,所以接口中的方法无论是否书写abstract,都是抽象方法,都只能有方法的定义。另外,接口中的方法都是public公有方法,如果不写public,默认也是public的公有方法,不能用protected或private去定义接口方法。

4、  一个类可以有多个接口,用“,”隔开但是一个抽象类只能继承一个类。

5、  接口中定义的变量,都是public static final的常量。

6、  接口可以继承接口,而且可以继承多个接口,一个类实现一个接口,不但要实现接口中定义的所有方法,而且其接口的父接口定义的方法同样要实现。

7、  继承和接口:

  • 继承和接口都是抽象的结果;
  • 继承用于在相关类实例中,共享通用代码,重用方法和属性;
  • java接口用于在不同的类实例中当中共享通用行为,重用方法;

8、  接口和抽象类的区别:

  • 抽象类和接口都不能产生对象(实例化);
  • 接口里所有方法都是abstract的,抽象类既有方法的定义也有方法的实现;
  • 接口中定义的变量必须是公有静态常量,而抽象类定义的变量是普通属性;
  • 一个类只能继承于另一个类,但可以实现多个接口;
  • 接口可以多继承接口,但抽象类只能单根继承;

9、  接口的应用:

事件开发步骤:

  • 1、确定事件源;
  • 2、确定监听器(ActionListener  接口);
  • 3、注册,建立事件源和监听器的联系(x.addActionListener(new MyEvent());)

java 面向对象编程--第十章 接口的更多相关文章

  1. Java面向对象编程基础

    一.Java面向对象编程基础 1.什么是对象?Object 什么都是对象! 只要是客观存在的具体事物,都是对象(汽车.小强.事件.任务.按钮.字体) 2.为什么需要面向对象? 面向对象能够像分析现实生 ...

  2. java 面向对象编程。。。。

    经过一周的学习(java),总结了许多,对java的理解,java的类型,运用,安装,基础语法,变量,常量,表达式,语句 java从C语言中继承了大量语言特性.java面向对象编程的基本特征,包括继承 ...

  3. JAVA面向对象编程课程设计——web版斗地主

    一.团队课程设计博客链接 JAVA面向对象编程课程设计--网络版单机斗地主 二.个人负责模块或任务说明 实体类的设计 斗地主规则的实现 人机自动出牌的算法 实现数据库的DAO模式 三.自己的代码提交记 ...

  4. java面向对象编程知识点总结

    一:今天完成 上午详细了解了java面向对象编程的一些细节,记录如下. 1)类 是一种引用类型,包含一个签名和一个主体,主体是放在花括号里面的成员,成员包括字段和方法,还有构造方法.初始化程序和嵌套类 ...

  5. Java面向对象编程(一)

    由于常常将Java和C++面向对象编程的原则搞乱,所以这次把相关要点分别总结一下,本文主要总结Java面向对象编程. 面向对象编程的三大特性是:继承性(inheritance), 多态性(polymo ...

  6. JAVA学习(五):Java面向对象编程基础

    Java面向对象编程基础 面向对象(Object oriented programming,OOP)技术是一种强有力的软件开发方法,它採用数据抽象与信息隐藏技术,来使软件开发简单化,以达到代码重用的目 ...

  7. [.net 面向对象编程基础] (16) 接口

    [.net 面向对象编程基础] (16) 接口 关于“接口”一词,跟我们平常看到的电脑的硬件“接口”意义上是差不多的.拿一台电脑来说,我们从外面,可以看到他的USB接口,COM接口等,那么这些接口的目 ...

  8. 《Java面向对象编程》

    <Java面向对象编程> 第11章 对象的生命周期 11.1  创建对象的方式 用new语句创建对象 运用反射手段,调用java.lang.Class 或者 java.lang.Const ...

  9. JAVA面向对象编程课程设计——网络版单机斗地主

    一.团队介绍 成员姓名 任务分配 成员课程设计博客链接 兰泽祥(组长) 数据库,斗地主规则的实现,人机自动出牌的算法,实体类的设计 JAVA面向对象编程课程设计--web版斗地主 吴修恩 JSP界面的 ...

随机推荐

  1. 加快Win7整体运行速度的12个小技巧

    在整体运行速度方面,微软Windows 7系统超越了它的前任Vista,拥有明显的提升;但是相比最新的Windows 8,似乎又有所不及,至少很少有Windows用户能够体会到15秒的开机速度.虽然如 ...

  2. poj3608Bridge Across Islands(凸包间最小距离)

    链接 以下所有文章均转载( http://blog.csdn.net/acmaker/article/details/3176910) 转载请注明出处! 考虑如下的算法, 算法的输入是两个分别有 m ...

  3. Oracle分析函数的项目实践实例

    SELECT * FROM SSE2_FLOW_EXPENSE T1 JOIN (SELECT SFEL.*, ROW_NUMBER() OVER(PARATITION BY SFEL.FE_EXPE ...

  4. Myeclipse优化篇

    1 . window-preferences-MyEclipse Enterprise Workbench-Maven4MyEclipse-Maven ,将 Maven JDK 改为电脑上安装的 JD ...

  5. 【摘抄】meta系列用法总结【持续更新中】

    meta标签分两大部分:HTTP标题信息(HTTP-EQUIV)和页面描述信息(NAME). ★页面描述信息NAME变量  name是描述网页的,对应于Content(网页内容),以便于搜索引擎机器人 ...

  6. Extjs中renderer:function函数用法

    renderer:function(value, cellmeta, record, rowIndex, columnIndex, store){ } 1.value是当前单元格的值 2.cellme ...

  7. 用RestTemplate碰到的问题

    给请求加上头信息 Request request = new Request(); HttpHeaders requestHeaders = new HttpHeaders(); requestHea ...

  8. python的模式匹配 - 正则表达式

    之前学过perl,深知perl在模式匹配方面的强大,现在想完全转到python,虽说python的模式匹配没有perl那么强大,但还是可以用的,只是需要一个熟悉的过程. 参考资料: Python正则表 ...

  9. java,UDP协议简单实现

    //UDP协议简单实现-----Serverpackage UDP; import java.net.DatagramPacket; import java.net.DatagramSocket; i ...

  10. alert与console.log

    1.alert在页面中弹出 console.log是在控制台显示 例子 var aa="Silence"; alert(typeof(aa)); console.log(typeo ...