java中类实现接口必须用implements关键字,位于class声明后、类体前,可实现单个或多个接口;若同时继承父类,则extends在前、implements在后;必须重写所有抽象方法且访问权限不能降低,未全部实现则类须声明为abstract。

Java 中类实现接口,必须用 implements 关键字,写在 class 声明后、类体前,后面跟一个或多个接口名(用逗号分隔)。
基本语法格式
类实现单个接口:
class ClassName implements InterfaceName { ... }
类实现多个接口:
class ClassName implements Interface1, Interface2, Interface3 { ... }
注意:如果类同时继承父类并实现接口,extends 必须在前,implements 必须在后:
class ChildClass extends ParentClass implements InterfaceA, InterfaceB { ... }
必须重写接口中的所有抽象方法
接口中定义的默认是 public abstract 方法(Java 8+ 还支持 default 和 static 方法)。当类用 implements 实现该接口时:
- 所有 abstract 方法必须在类中提供 public 的具体实现
- 方法名、参数列表、返回类型必须与接口中完全一致
- 不能降低访问权限(比如写成 private 或 protected)
- 若未全部实现,该类必须声明为 abstract
例如:
interface Animal {
void speak();
void move();
}
class Dog implements Animal {
public void speak() { System.out.println("Woof!"); } // ✅ 必须 public
public void move() { System.out.println("Running"); } // ✅
}
可以同时继承类 + 实现多个接口
Java 不支持多继承(不能 extends 多个类),但允许一个类 extends 一个父类的同时 implements 多个接口,这是实现“多重行为”的常用方式:
- 父类提供通用属性和部分实现
- 接口定义能力契约(如
Runnable、Comparable、Serializable) - 比如:一个图形类继承
Shape,同时实现Drawable和Resizable
接口之间也可以继承,用 extends
虽然不是 implements 的直接用法,但常配合出现:接口可通过 extends 继承其他接口(支持多继承),子接口会继承父接口的所有抽象方法。类在 implements 子接口时,需实现整个继承链上的所有抽象方法。
interface Flyable extends Movable, Drawable { void fly(); }
class Bird implements Flyable { // 必须实现 fly() + Movable 的 move() + Drawable 的 draw()
public void fly() { ... }
public void move() { ... }
public void draw() { ... }
}Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











