浅谈java接口
来源:互联网 发布:合肥工业大学网络公选 编辑:程序博客网 时间:2024/05/18 17:57
一,接口作用:
1,弥补java不能直接进行多重继承的一种多重继承的机制。
2,扩展已经继承了父类的子类的功能。
------|另一种扩展功能的方法是直接继承另一个父类,但是java只允许单继承。所以需要出现了接口用来弥补这一缺点。实质还是实现多重机制。
二,接口的声明与定义:
1,接口中可以有的成员为:final,static,public修饰的共有静态成员常量;public,abstract修饰的抽象方法(也叫规范)。格式一般固定的。但是由于接口成员的前面修饰一般是固定的那几个修饰,所以可以省略那些修饰。在JVM运行时会自动把那些修饰加上。
2,接口都是抽象的类,所以无须用abstract去修饰interface。
3,修饰接口的关键字是interface,作用等同于class
三,接口的多重机制的实现与注意事项:
1,接口可以同时用extends继承多个接口。
Interface InterPar1{}
Interface InterPar2{}
interface InterSon extends InterPar1,InterPar2{}
注意事项:
-----------|多个父接口中有同名成员变量的问题:
(1),java中允许InterPar1与InterPar2中有两个同名(并且可以不为私有)的成员变量。并且JVM编译并不会报错。但是,在InterSon接口无法直接使用同名的那个变量 ,因为JVM无法辨别到底是哪个父接口中的这个变量。所以使用这个同名变量时需要加上父接口为前缀。注意,如果其中一个是私有的的话,则不存在这个问题,因为如果是私有的就无法被继承,根本就没法在子接口中使用。
-----------|多个父接口中有同名成员方法的问题:
(1),java中允许InterPar1与InterPar2中有两个方法签名相同的成员方法。并且JVM编译并不会报错。但是,JVM在处理方法签名相同的方法和处理同名变量时采用了不同的方式。Java会自动将这两个方法合并为一个方法(甚至谁覆盖谁都无所谓,当然存在一些细微的差别),后面的实现者只需要实现一个就够啦。
2,类只能一个继承一个父类,但是可以同时implements实现多个接口(会出现上面讲到的同名方法的问题)。
提示:这些问题,其实实质还是各个类以及各个类中的不同成员在内存的存储的问题。
- 浅谈java集合接口
- 浅谈java接口
- 浅谈java接口(补充)
- 浅谈Java中接口
- 黑马程序员——浅谈java接口
- 浅谈Java中的接口回调
- java:浅谈axis调用webservice接口
- java接口不能实例化原因浅谈
- 浅谈Java的标识接口-Serializable
- 浅谈Java的标识接口-cloneable
- 浅谈一下JAVA中的接口interface
- JAVA:浅谈抽象类与接口
- 浅谈Java中的接口和抽象类
- [Java学习日志]浅谈接口与事件
- 浅谈java接口与抽象类
- java接口不能实例化原因浅谈
- 浅谈java抽象类与接口
- 浅谈接口和抽象类(java)
- Myeclipse中无法删除部署在tomcat上的工程
- OC语言注意事项一
- C语言中volatile关键字的作用
- bootstrap 精简教程
- Hibernate 乱码问题解决
- 浅谈java接口
- 计算机相关学习范围和线路
- 运算符重载
- 25个经典的Spring面试问答
- 加载图片使用imageNamed方法还是 imageWithContentsOfFile?
- 图像铅笔画算法
- GUID分区表的学习
- Sum It Up
- Radar Installation - POJ 1328 贪心