今天只讲接口继承不讲其他
- 接口的本质(接口不是类)
- 接口的存在的意义
- 接口不能继承 类
- 接口仅可以继承接口
- 子类先继承 父类 后实现 接口
1.接口的本质
在 Java 中,被关键字 interface 修饰的“类”是接口。
接口: 是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。
注意:接口不是类,百度百科、维基、java核心技术 卷I以及Java编程思想一书 都是如此定义的
2.接口的存在意义
-
禁止直接为其实例化对象
接口连构造方法都没有,所以,根本不可能为其实例化对象。 -
打破单继承局限(实现伪多重继承) 伪代码:
class A implements 接口C,接口D…
3.接口不能继承类
接口中只能定义静态常量和抽象方法,无论普通类还是抽象类都没有如此严格的要求,因此接口既不能继承普通类也不能继承抽象类。
但是在JAVA 1.8之后,接口可以定义默认的方法 格式为:
default void xxx(){
sout(“sssss”);
}
虽然这违背了面向接口编程,但是带来的好处是可观的:
- 对于一些公有的方法,直接使用默认的方法,就不用在实现类中写重复代码了。
- 可以对代码零入侵的加入一些新的方法
4.接口只能继承接口,且可以多继承
举例:
interface A extends 接口c ,接口D,接口E