当前位置:首页 > Java

java如何写一个接口

2026-03-02 20:46:51Java

定义接口

在Java中,使用interface关键字定义接口。接口可以包含抽象方法、默认方法、静态方法和常量。接口的所有方法默认是public abstract,所有常量默认是public static final

public interface MyInterface {
    // 抽象方法
    void abstractMethod();

    // 默认方法(Java 8+)
    default void defaultMethod() {
        System.out.println("Default method implementation");
    }

    // 静态方法(Java 8+)
    static void staticMethod() {
        System.out.println("Static method implementation");
    }

    // 常量
    String CONSTANT = "Interface constant";
}

实现接口

类通过implements关键字实现接口,必须实现接口中的所有抽象方法(除非是抽象类)。一个类可以实现多个接口。

public class MyClass implements MyInterface {
    @Override
    public void abstractMethod() {
        System.out.println("Implemented abstract method");
    }

    // 可以选择重写默认方法
    @Override
    public void defaultMethod() {
        System.out.println("Overridden default method");
    }
}

使用接口

接口可以通过多态特性被引用,调用实现类的方法。

public class Main {
    public static void main(String[] args) {
        MyInterface obj = new MyClass();
        obj.abstractMethod(); // 调用实现类的方法
        obj.defaultMethod();  // 调用默认方法或重写的方法
        MyInterface.staticMethod(); // 调用静态方法
        System.out.println(MyInterface.CONSTANT); // 访问常量
    }
}

接口继承

接口可以继承其他接口,支持多重继承。

public interface ParentInterface {
    void parentMethod();
}

public interface ChildInterface extends ParentInterface {
    void childMethod();
}

public class MyClass implements ChildInterface {
    @Override
    public void parentMethod() {
        System.out.println("Parent method implementation");
    }

    @Override
    public void childMethod() {
        System.out.println("Child method implementation");
    }
}

函数式接口

Java 8引入函数式接口(@FunctionalInterface),仅包含一个抽象方法,可用于Lambda表达式。

@FunctionalInterface
public interface MyFunctionalInterface {
    void execute();

    // 可以有默认方法
    default void log() {
        System.out.println("Logging");
    }
}

public class Main {
    public static void main(String[] args) {
        // 使用Lambda实现函数式接口
        MyFunctionalInterface func = () -> System.out.println("Lambda execution");
        func.execute();
    }
}

java如何写一个接口

标签: 如何写接口
分享给朋友:

相关文章

vue 接口与实现

vue 接口与实现

Vue 接口与实现的核心概念 Vue.js 的接口(Interface)与实现(Implementation)主要围绕组件的设计模式、API 的抽象层以及底层响应式原理展开。以下是关键点分析:…

vue实现搜索框接口

vue实现搜索框接口

实现搜索框接口的基本步骤 在Vue中实现搜索框接口需要结合前端输入处理和后端API交互。以下是关键实现方法: 数据绑定与输入处理 使用v-model绑定搜索框输入值: <template…

vue实现按需调用接口

vue实现按需调用接口

Vue 中按需调用接口的实现方法 在 Vue 项目中按需调用接口可以优化性能,避免不必要的网络请求。以下是几种常见实现方式: 使用计算属性触发接口调用 通过计算属性监听数据变化,在需要时调用接口:…

vue实现过期接口拦截

vue实现过期接口拦截

vue实现过期接口拦截的方法 在Vue项目中实现过期接口拦截通常需要结合axios拦截器和后端返回的状态码或自定义字段。以下是几种常见实现方式: 基于HTTP状态码的拦截 当后端返回特定状态码(如…

react如何接接口

react如何接接口

React 中接入接口的常见方法 使用 fetch API 发起 HTTP 请求fetch 是浏览器原生支持的 API,无需额外安装库。发起 GET 请求的示例代码如下: fetch('https…

如何写react项目

如何写react项目

创建React项目 使用Create React App(CRA)快速初始化项目,这是官方推荐的脚手架工具。运行以下命令生成项目结构: npx create-react-app my-app cd…