Java 笔记 interface

发布于:2025-07-28 ⋅ 阅读:(13) ⋅ 点赞:(0)

以下是使用 interface 时的一些注意事项最佳实践

✅ 1. Java 8+ 中接口可以有 defaultstatic 方法

  • default 方法:可以在接口中提供默认实现。

  • static 方法:可以直接通过接口名调用,不能被实现类继承。

interface MyInterface {
    default void log() {
        System.out.println("Default log");
    }

    static void util() {
        System.out.println("Utility method");
    }
}

⚠️ 注意:

  • default 方法在多继承时可能会引起冲突(需要在实现类中显式重写)。

✅ 2. 一个类可以实现多个接口(多重继承接口)

这是接口的强大之处。Java 不支持类的多继承,但支持接口多继承。

interface A {
    void methodA();
}

interface B {
    void methodB();
}

class C implements A, B {
    public void methodA() { }
    public void methodB() { }
}

✅ 3. 接口可以继承其他接口

  • 接口之间可以多重继承。

  • 实现该接口的类必须实现所有祖先接口的方法,除非是 default 方法。

interface A {
    void methodA();
}

interface B extends A {
    void methodB();
}

✅ 4. Java 9+ 中接口允许 private 方法

  • 用于复用 defaultstatic 方法中的公共逻辑。

interface MyInterface {
    private void common() {
        System.out.println("Shared logic");
    }

    default void a() {
        common();
    }

    default void b() {
        common();
    }
}

错误做法 原因说明
在接口中堆砌一堆常量 接口职责变得模糊,违背接口隔离原则
一个类实现多个无关的接口 可读性差、设计混乱
滥用 default 方法(实现逻辑复杂) 接口不应承担太多实现逻辑,职责不清晰
用接口做工具类(如 interface Utils) 接口不是工具类,建议用 final class + static

写小说也写代码,左手架空世界,右手现实逻辑。  
📚 欢迎来看博客,起点同笔名在写小说,欢迎来找我玩。

https://my.qidian.com/author/433910170/


网站公告

今日签到

点亮在社区的每一天
去签到