学习记录
接口
概念:接口是功能的集合,是多个类的公共规范,是一种应用数据类型
定义:接口定义时需要使用interface关键字。
格式:public interface 接口名称{ }
接口中成员的特点:1、接口中可以定义变量,但是变量必须有固定的修饰符修饰,public static final 所以接口中的变量也称之为常量,其值不能改变。(static可以用类名.成员调用 final 被final修饰的常量 一次赋值,终身不变)
2、接口中可以定义方法,方法也有固定的修饰符,public abstract
3、接口不可以创建对象。
4、子类必须覆盖掉接口中所有的抽象方法后,子类才可以实例化。否则子类是一个抽象类。
接口的好处:
1、接口的出现扩展了功能。
2、接口其实就是暴漏出来的规则。
3、接口的出现降低了耦合性,即设备与设备之间实现了解耦。
接口和抽象的区别:
相同点:
1.都位于继承的顶端,用于被其他类实现或继承;
2.都不能直接实例化对象;
3.都可以包含抽象方法,其子类都必须覆写这些抽象方法;
区别:
1.抽象类为部分方法提供实现,避免子类重复实现这些方法,提高代码重用性;接口只能包含抽象方法;
2.一个类只能继承一个直接父类(可能是抽象类),却可以实现多个接口;(接口弥补了Java的单继承)
3.抽象类是这个事物中应该具备的内容, 继承体系是一种 is..a关系
4.接口是这个事物中的额外内容,继承体系是一种 like..a关系
多态
概念:父类引用变量指向子类对象
多态的定义格式:父类的引用变量指向子类对象
父类类型 变量名 = new 子类类型();
变量名.方法名();
多态调用成员变量特点:编译运行都看左边
编译时期父类有编译成功,父类没有编译失败
运行时期,结果为父类变量的值
调用成员方法特点:编译看左边,运行看右边
编译时期父类有编译成功,父类没有编译失败
运行时期调用子类重写后的方法

浙公网安备 33010602011771号