JAVA基础之接口
文章目录
前言
本章主要介绍接口是什么?接口有什么作用?如何使用接口?
废话不多说直接开始吧!!!
思维导图
提示:以下是本篇文章正文内容,下面案例可供参考
一、接口概念?
接口就是一种公共的规范标准,只要符合规范标准,大家都可以通用。
- Java中接口存在的两个意义
- 用来定义规范
- 用来做功能的拓展
二、接口特点
1.成员变量
默认修饰符
public static final
所以它只能是常量
例如:public static final int num=10;
又或者是这样:int num=10;
因为万能的idea,可以自动补全;nice
2.成员方法
默认修饰符
public abstract
所以它只能是抽象方法;
例如:public abstract void study();
3.构造方法
无
没错就是没有,它都无法实例化,当然就没有构造方法啦。。。
三、JDK8,9改进
先来了解一下为什么要改进;
设想一下,多个实现类实现接口,那么每一个实现类都重写接口的方法,假如,该接口方法升级,那是不是要一个一个的把每一个实现类中的方法都重新写呢?对于一个爱偷懒的程序员来说,绝对是个大灾难!!在jdk的升级中解决了该问题。
1.JDK8改进
主要是针对方法体改进
a. 默认方法
关键字:default
应用:public default void study(){
};
没错,眼尖的相信已经发现了,它居然有方法体了,不是说接口中的方法都是抽象方法吗?这怎么出现方法体了呢?后面总结一起说,,,,
b.静态方法
关键字:static
应用:public static void study(){
};
总结:之所以带方法体,是因为该接口在被实现类实现时可以不用重写该方法(默认方法,静态方法),l
2.JDK9改进
a.私有方法
关键字:private
应用1:private void study(){
}
应用2:private void study(){
}
产生原因:设想一下,如果你想在接口中用该接口中某种方法,来便利的执行某些相同的步骤。这就产生了一个疑问?该方法我只想让本接口使用,不想让外面的类使用,可不可以呢?答案是:当然可以了。不然还说它,,,嘻嘻,那就是运用私有方法解决。
总结:私有方法也是一个带方法体的方法,可以被本接口中使用;
四、类,接口关系
1.类与类关系
继承关系,可以是单继承,多层继承,但是不能多继承
2.类与接口关系
实现关系,可以单实现,也可以多实现,还可以在继承一个类的同时实现多个接口
3.接口与接口关系
继承关系,可以单继承,也可以多继承