201711671111 《Java程序设计》第六章学习总结
教材学习内容总结
1.接口
- 使用关键字interface来定义一个接口。接口的定义和类的定义很相似,分为接口声明和接口体。
- 接口声明:定义接口包含接口声明和接口体。格式如下:interface 接口的名字。
- 接口体:接口体中包括常量的声明(没有变量)和抽象方法。接口体只有抽象方法,没有普通方法,而且接口体中所有的常量的访问权限一定是public,而且都是static常量(允许省略publicfinal和static修饰符)。接口体只进行方法的声明,不提供方法的实现。
2.实现接口
- 一个类需要在类声明中使用关键字implements声明该类实现一个或多个接口。
- 如果一个非抽象类实现某个借口,那么这个类必须重写这个借口中的所有方法。需要注意的是,由于接口的方法一定是public abstract方法,所以类在重写接口方法时不仅需要去掉abstract修饰符、给出方法体,而且这个方法的权限一定要加public。
- 如果一个类声明实现一个接口,但是没有重写接口中的所有方法,那么这个类必须是抽象类。
- 抽象类既可以重写接口中的方法,也可以拥有接口中的方法。
- 接口也可以被继承,可以通过关键字extends声明一个接口是另一个接口的子接口。由于接口中的方法和常量都是public,子接口将继承父接口中的全部方法和常量。
3.接口回调
- 接口回调是指:可以把实现某一接口的类创建的对象的引用赋值给改接口声明的借口变量,那么该接口变量就可以调用被类实现的接口方法。
- 接口无法调用类中的其他的非接口方法。
4.理解接口
- 接口可以抽象出重要的行为标准,该行为标准用抽象方法来表示。可以把实现接口的类的对象的引用赋值给接口变量。
- 抽象类接口:作为行为准则。抽象类抽象类用在同一个类别对象。接口更注重行为一致性。
5.接口与多态
- 由接口产生的多态就是指不同的类在实现同一个接口时可能具有不同的实现方式,那么接口变量在回调接口方法时就可能具有多种形态。
6.接口参数
- 如果一个方法的参数是接口类型,我们就可以将任何实现该类的实例的引用传递给该接口参数,那么接口参数就可以回调类实现的接口方法。
7.abstract类与接口的比较
- abstract类和接口都可以有abstract方法。
- 接口中只有常量,不能有变量,而abstract类中既可以有常量,也可以有变量。
- abstract类中也可以有非abstract方法,但接口不可以。
- 在使用s多态设计程序时要熟练使用接口回调技术以及面向接口编程的思想,以便体现程序设计所提倡的开闭原则