当前位置:首页 > Java

java如何写接口

2026-03-02 22:16:07Java

如何在Java中编写接口

Java中的接口(Interface)是一种抽象类型,用于定义一组方法规范,供类实现。接口可以包含抽象方法、默认方法、静态方法和常量。

定义接口

使用interface关键字定义接口,接口中的方法默认是public abstract,变量默认是public static final

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

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

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

    // 常量
    String CONSTANT = "CONSTANT_VALUE";
}

实现接口

类使用implements关键字实现接口,必须实现接口中的所有抽象方法。

public class MyClass implements MyInterface {
    @Override
    public void abstractMethod() {
        System.out.println("Implemented abstract 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); // 访问常量
    }
}

接口的多重实现

一个类可以实现多个接口,解决Java单继承的限制。

public interface InterfaceA {
    void methodA();
}

public interface InterfaceB {
    void methodB();
}

public class MyClass implements InterfaceA, InterfaceB {
    @Override
    public void methodA() {
        System.out.println("Method A");
    }

    @Override
    public void methodB() {
        System.out.println("Method B");
    }
}

接口继承

接口可以继承其他接口,形成接口的层次结构。

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");
    }

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

函数式接口(Java 8+)

只有一个抽象方法的接口称为函数式接口,可以用@FunctionalInterface注解标记。

java如何写接口

@FunctionalInterface
public interface MyFunctionalInterface {
    void execute();
}

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

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

相关文章

java实现vue接口

java实现vue接口

Java 实现 Vue 接口的方法 在 Java 中实现 Vue 前端调用的接口,通常需要使用 Spring Boot 框架构建 RESTful API。以下是具体的实现步骤和代码示例。 创建 Sp…

如何实现vue数据接口

如何实现vue数据接口

实现Vue数据接口的方法 在Vue中实现数据接口通常涉及与后端API的交互,可以通过多种方式完成。以下是几种常见的方法: 使用axios发送HTTP请求 axios是一个流行的HTTP客户端,适用…

vue实现按需调用接口

vue实现按需调用接口

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

vue实现过期接口拦截

vue实现过期接口拦截

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

react native 如何写组件

react native 如何写组件

React Native 组件开发指南 React Native 组件开发主要分为两种类型:函数组件和类组件。以下分别介绍两种组件的写法及核心概念。 函数组件写法 函数组件是 React Nativ…

react如何写轮播图

react如何写轮播图

使用 React 实现轮播图 轮播图可以通过多种方式实现,以下是几种常见的方法,包括使用第三方库和纯手写实现。 使用第三方库(react-slick) react-slick 是一个流行的轮播图库,…