接口
接口
接口(Interface)是Java中的一种引用类型,它定义了一组方法的规范,但没有具体的实现。
接口可以看作是一个规则,规定了实现该接口的类需要提供哪些方法,并且定义了方法的输入和输出。
1. 定义格式
接口(Interface)的定义格式如下:
public interface 接口名 {
// 声明常量
// 声明抽象方法
// 声明默认方法
// 声明静态方法
}
接口的名字通常使用大写字母开头,按照命名规范使用驼峰命名法。
例如:一个定义 Animal
接口
public interface Animal {
// 声明常量
int LEGS = 4;
// 声明抽象方法
void eat();
void sleep();
// 声明默认方法
default void move() {
System.out.println("Animal is moving.");
}
// 声明静态方法
static void breathe() {
System.out.println("Animal is breathing.");
}
}
上述示例中,定义了一个
Animal
接口,该接口包含了常量LEGS
、抽象方法eat()
和sleep()
,以及默认方法move()
和静态方法breathe()
。
接口中的常量默认为 `public`、`static`、`final`,可以直接通过接口名访问。
2. 成员特点
2.1 成员方法
成员方法的格式:
[访问修饰符] 返回类型 方法名([参数列表]);
-
成员方法在接口中默认为抽象方法,不需要使用
abstract
关键字进行修饰。 -
方法默认为
public
访问权限,可以省略public
关键字。 -
实现类必须提供方法的具体实现。
示例:
public interface Animal { void eat(); void sleep(); }
2.2 默认方法
默认方法的格式:
default 返回类型 方法名([参数列表]) {
// 默认方法的具体实现
}
-
默认方法使用
default
关键字进行修饰。 -
默认方法可以有具体的实现代码。
-
实现类可以选择是否覆写默认方法。
示例:
public interface Animal { void eat(); void sleep(); default void move() { System.out.println("Animal is moving."); } }
2.3 静态方法
静态方法的格式:
static 返回类型 方法名([参数列表]) {
// 静态方法的具体实现
}
-
静态方法使用
static
关键字进行修饰。 -
静态方法可以直接通过接口名调用,无需通过实现类的实例来调用。
示例:
public interface Animal { void eat(); void sleep(); static void breathe() { System.out.