类与接口的关系为实现关系,即类实现接口
关键字implements。
class 类名 implements 接口{
重写方法;
}
类实现了接口之后必须实现方法,重写。
必须给出 具体的功能
在类实现接口后,该类就会将接口中的抽象
方法继承过来,所以该类必须重写该抽象方法。
定义了一个接口
1:接口中的变量只能常量 public static final
2;成员方法都被public abstract修饰
(不管你写不写 都是public abstract)
3:接口不可以创建对象
4:如果子类是个具体的类,那么实现完必须重写所有的方法 可以创建对象
否则 该子类是抽象类
父类中 int num=3;//不能改的。因为被static final修饰
==================================
类与类之间的继承关系
只能单继承 不能多继承
类和接口 实现关系
但实现可以
多实现也可以
一个类继承的同时 可以实现接口
而且不会影响多实现
多个接口之间可以使用extends进行继承
类继承类的同时实现接口
子类继承父类是基础功能,实现接口功能是拓展功能。
总结:一个类继承同时可以实现接口
=======================================
使用接口的好处:
1.接口的出现扩展了功能
2.接口其实就是暴漏出来的规则
3.接口的出现降低了耦合性,即设备和设备之间出现了解耦。
接口和抽象类的区别
相同点:
1 都是位于继承的定曾获,用于被其他类实现继承
2,都不能直接实例化对象
3都包含抽象方法,其子类必须重写抽象方法
不同点:
抽象:抽象类为部分方法提供实现,避免子类重复实现这些方法,提高代码重用型,接口值
包含抽象方法。
一个类只能继承一个直接父类,却可以实现多个接口。
二者的选用:
优先选用接口,尽量少用抽象类。
需要定义子类的型为,又要为子类提供共性功能是擦起选用抽象类。
|
|