Java 笔记 interface
以下是使用 interface
时的一些注意事项和最佳实践:
✅ 1. Java 8+ 中接口可以有 default
和 static
方法
-
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
方法
-
用于复用
default
或static
方法中的公共逻辑。
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/