java 第六章 接口与实现
来源:互联网 发布:淘宝上拍了卖方不发货 编辑:程序博客网 时间:2024/06/15 08:35
1. 使用关键字interface来定义一个接口。接口的定义和类的定义很相似,分别为接口声明和接口体。
2. 定义接口包含接口声明和接口体,和类不同的是,定义接口时使用关键字interface来声明自己是一个接口,格式为:interface接口的名字
3. 接口体中包含常量的声明(没有变量)和抽象方法两部分。接口体中只有抽象方法,没有普通的方法,而且接口体中所有的常量的访问权限一定都是public,而且是static常量(允许省略public,final,static修饰符),所有的抽象方法的访问权限一定都是public(允许省略public,final,static修饰符)。
4. 在java语言中,接口由类来实现以便使用接口中的方法。一个类需要在类声明中使用关键字implements声明该类实现一个或多个接口。如果实现多个接口。用逗号隔开接口名,如:class A implement Printable,Addable
如果是子类实现接口,如:class Dog extends Animalimplements Eatable,Sleepable
5. 如果一个非抽象类实现了某个接口,那么这个类必须重写这个接口中的所有方法。由于接口的方法一定是publicabstract方法,所以类在重写接口方法时不仅要去掉abstract修饰符,给出方法体,而且方法的访问权限一定要明显地用public来修饰。
6. 如果一个类声明实现一个接口,但没有重写接口中的所有方法,那么这个类必须是抽象类,也就是说,抽象类既可以重写接口中的方法,也可以直接拥有接口中的方法。
7. 定义接口时,如果关键字interface前面加上public关键字,就称这样的接口是一个public接口。public接口可以被任何一个类实现。如果一个接口不加public修饰,就称作友好接口,友好接口可以被与该接口在同一个包中的类实现。
8. 如果父类实现了某个接口,那么子类也就自然实现了该接口,子类不必再显式地使用关键字implements声明实现这个接口。
9. 接口也可以被继承,即可以通过关键字extends声明一个接口是另外一个接口的子接口,子接口将继承父接口中的全部方法和常量。
10. 接口是java中的一种重要的类型数据,用接口声明的变量称作接口变量。接口属于引用型变量,接口变量中可以存放实现该接口的类的实例的引用,即存放对象的引用。
11. 在java语言中,接口回调是指可以把实现某个接口的类创建的对象的引用赋值给该接口声明的接口变量,那么该接口变量就可以调用被类实现的接口方法。实际上,当接口变量调用被类实现的接口方法时,就是通知相应的对象调用这个方法。
12. 理解接口:(1)接口可以抽象出重要的行为准则,该行为标准用抽象方法来表示;(2)可以把实现接口的类的对象的引用赋值给接口变量,该接口变量可以调用被该类实现的接口方法,即体现该类根据接口里的行为标准给出的具体行为。
13. 由接口产生的多态就是指不同的类在实现同一个接口时可能具有不同的实现方式,那么接口变量在回调接口方法时就可能具有多种形态。
14. 如果一个方法的参数是接口类型,我们就可以将任何实现该接口的类的实例的引用传递给该接口参数,那么接口参数就可以回调实现的接口方法。
15. abstract类和接口的比较如下:(1)abstract类和接口都可以有abstract方法;(2)接口中只可以有常量,不能有变量;而abstract类中既可以有常量,也可以有变量;(3)abstract类中也可以有非abstract方法,接口不可以。
16. 在使用多态设计程序时,要熟练使用接口回调技术以及面向接口编程的思想,以便体现程序设计所提倡的“开-闭原则”。
- java 第六章 接口与实现
- 第六章接口与实现
- 第六章 接口与实现 编程题
- java学习笔记---第六章接口与内部类
- 《Java核心技术》复习笔记 - 第六章 接口与内部类
- [core java学习笔记][第六章接口与内部类]
- 第六章Java图形用户接口
- java第六天--接口
- Core Java Volume I 读书笔记---第六章 接口与内部类
- #Java 核心技术卷一阅读笔记# 第六章 接口、lambda表达式与内部类
- Java之接口与实现
- Java语言入门 -- 第六章 Java图形用户接口
- Java语言入门 -- 第六章 Java图形用户接口
- c#接口实现 - 第六节、接口转换
- Java本地接口(JNI)编程指南和规范(第六章)
- JAVA再学习-第六章对象,类,包和接口
- java核心技术第六章——接口和内部类
- Java第六章:动物声音“模拟器”(接口)
- hduoj 2014
- json、javaBean、xml互转的几种工具介绍
- dedecms 重新{dede:flink}标签自由调用表参数[field:webname /] [field:url /] [field:logo /]
- 算法设计与分析基础_学习笔记
- Spreadsheets(进制转化)(sscanf的使用)
- java 第六章 接口与实现
- 在屏幕上打印杨辉三角
- adb push&pull文件方法
- 171204-链表复习【连续第四十天】
- Spark性能调优-数据本地性
- Java web从入门到放弃(1)
- 网关的初步认识
- AJAX学习笔记day1
- Linux定时任务Crontab命令详解