在Java中,可以使用interface
关键字来定义接口。接口是一种抽象类型,它定义了一组抽象方法,但不能包含实例变量和常量。接口可以被类实现,一个类可以实现多个接口。
以下是定义接口的语法:
public interface 接口名 { // 定义抽象方法 public void 方法名(参数列表); // 可以定义常量 public static final 数据类型 常量名 = 值; }
接口中的方法默认都是public abstract
修饰的抽象方法,可以省略这些修饰符。常量必须声明为public static final
,可以省略这些修饰符。
以下是一个例子,定义了一个Animal
接口:
public interface Animal { public void eat(); public void sleep(); public static final int NUM_LEGS = 4; }
接口定义后,可以通过类来实现接口,实现接口使用implements
关键字。实现接口时,必须实现接口中的所有抽象方法。
以下是实现接口的语法:
public class 类名 implements 接口名 { // 实现接口中的方法 public void 方法名(参数列表) { // 实现方法的具体逻辑 } }
以下是一个例子,定义了一个Dog
类实现Animal
接口:
public class Dog implements Animal { // 实现eat方法 public void eat() { System.out.println("The dog is eating."); } // 实现sleep方法 public void sleep() { System.out.println("The dog is sleeping."); } }
使用接口时,可以通过接口类型引用实现了该接口的对象,调用接口中定义的方法。
以下是一个例子,使用Animal
接口引用Dog
对象,调用eat
和sleep
方法:
public class Main { public static void main(String[] args) { Animal animal = new Dog(); animal.eat(); animal.sleep(); System.out.println("Number of legs: " + Animal.NUM_LEGS); } }
输出结果:
The dog is eating. The dog is sleeping. Number of legs: 4