在Java中,可以使用关键字interface
来定义接口。接口可以包含常量和抽象方法,并且不能包含实例变量和非抽象方法。
下面是定义接口的语法:
public interface 接口名 {
// 常量声明
// 抽象方法声明
}
在接口中,可以声明常量和抽象方法,但是不能有方法体。常量在接口中默认是public static final
类型的,而抽象方法在接口中默认是public abstract
类型的。
例如,定义一个名为Animal
的接口,其中包含一个常量和一个抽象方法:
public interface Animal {
int LEGS = 4; // 常量声明
void sound(); // 抽象方法声明
}
另外,接口还可以继承其他接口,使用关键字extends
,并且可以同时继承多个接口。语法如下:
public interface 子接口名 extends 父接口名1, 父接口名2, ... {
// 常量声明
// 抽象方法声明
}
例如,定义一个名为Walkable
的接口,继承自Animal
接口:
public interface Walkable extends Animal {
void walk();
}
接口可以被类实现,使用关键字implements
。一个类可以实现多个接口,实现接口的类必须实现接口中的所有抽象方法。语法如下:
public class 类名 implements 接口名1, 接口名2, ... {
// 类的实现
}
例如,定义一个名为Dog
的类,实现了Animal
接口和Walkable
接口:
public class Dog implements Animal, Walkable {
public void sound() {
System.out.println("汪汪");
}
public void walk() {
System.out.println("四条腿走路");
}
}
这样,Dog
类就实现了Animal
接口和Walkable
接口中的所有抽象方法。