|
注:
关于接口将分成两篇文章讲解,本篇文章主要讲解使用语法,下一篇文章会使用两个常用例子来帮助我们更好的的了解接口。那我们就开始吧~
接口
1. 接口的概念
在现实生活中,接口的例子比比皆是,比如:笔记本上的USB口,电源插座等。接口就是公共的行为规范标准,大家在实现时,只要符合规范标准,就可以通用。
在Java中,接口可以看成是:多个类的公共规范,是一种引用数据类型。
2. 语法规则
使用interface关键字
interface 接口名 {
//·····
}
使用implements关联类和接口,普通类必须重写接口中的所有抽象方法
class 类名 implements 接口名 {
//必须重写接口中的抽象方法
}
# 注意事项 #
- 创建接口时, 接口的命名一般以大写字母
I
开头.。 - 推荐接口中的方法和属性不要加任何修饰符号, 保持代码的
简洁性
。 - 子类和父类之间是
extends
继承关系,类与接口之间是implements
实现关系。 - 如果类没有实现接口中的所有的抽象方法,则类必须设置为
抽象类
。
3. 接口的特性
1.成员变量量会被隐式的指定为是public static final
修饰的
2.成员方法量会被隐式的指定为是pubilc abstract
修饰的
3.1.接口中的普通成员方法,不能有具体的实现
,只能由实现接口的类来实现。
3.2.被delault
修饰的普通成员方法,可以有具体的实现(JDK8后才有),且默认为public修饰
4.接口中可以以有静态成员方法
,且默认为public修饰
5.接口类型是一种引用类型,但不可以进行实例化
6.接口中不能
有静态代码块,实例代码块和构造方法
7.接口虽然不是类,但是接口编译完成后字节码文件的后缀格式也是.class
# 注意事项 #
- 接口中每一个方法都是
public
的抽象方法(其他修饰符都会报错) - 重写接口中的方法时,必须用
public
修饰
4. 实现多个接口
在Java中,类和类之间是单继承的,一个类只能有一个父类,即Java中不支持多继承,但是一个类可以实现多个接口。
我们先写一个Flower💐类
abstract class Flower {
public String name;
public Flower(String name) {
this.name = name;
}
public abstract void flowering();
}
再创建几个子类🌻🌹🌸
class Sunflower extends Flower{
//向日葵
public Sunflower(String name) {
super(name);
}
@Override
public void flowering() {
System.out.println(name+