Java教程各种接口的介绍
在Java中,接口是一种规范或一种协议,它定义了一套行为规范,而不去描述这个行为如何实现。接口可以被类实现,也可以用来定义类型和变量。
接口的定义
接口使用interface
关键字来定义,它包含以下内容:
public interface InterfaceName {
// 常量定义
public static final int CONSTANT_FIELD = 1;
// 抽象方法定义
public abstract void methodName();
// 默认方法定义
public default void defaultMethodName() {
// 方法体
}
// 静态方法定义
public static void staticMethodName() {
// 方法体
}
}
接口中的常量必须使用public static final
关键字修饰,方法可以是抽象方法、默认方法或静态方法。
类实现接口
类使用implements
关键字实现接口,一个类可以实现多个接口,实现接口后必须将其中的所有抽象方法实现,需要注意的是,默认方法和静态方法不需要实现。
public class ClassName implements InterfaceName {
// 实现接口中的抽象方法
@Override
public void methodName() {
// 方法体
}
}
常用接口介绍
Comparable
Comparable
接口用于比较两个对象的大小。
public interface Comparable<T> {
public int compareTo(T o);
}
通过实现Comparable
接口,可以使类的实例能够比较大小,例如实现了Comparable
接口的Person
类:
public class Person implements Comparable<Person> {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
@Override
public int compareTo(Person o) {
// 比较年龄大小
return this.age - o.age;
}
}
这样,就可以对Person
对象按照年龄进行排序,例如:
List<Person> personList = new ArrayList<>();
personList.add(new Person("Alice", 20));
personList.add(new Person("Bob", 18));
personList.sort(null);
Runnable
Runnable
接口用于定义一个执行任务的线程。
public interface Runnable {
public abstract void run();
}
通过实现Runnable
接口,可以定义线程要执行的任务,例如:
public class MyTask implements Runnable {
@Override
public void run() {
// 执行线程任务
}
}
MyTask task = new MyTask();
Thread thread = new Thread(task);
thread.start();
这样,就可以创建一个线程来执行MyTask
类中的任务。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java教程各种接口的介绍 - Python技术站