【java】implements
什么是 implements
?
implements
是 Java 中的一个关键字,用来表示一个类实现某个接口。你可以把接口想象成一个任务清单,而实现接口的类就是完成任务的人。
-
接口:定义了一组任务(方法),但没有具体说明怎么做。
-
实现接口的类:必须完成接口中定义的所有任务(实现所有方法)。
举个例子
1. 接口是任务清单
假设有一个任务清单(接口),里面有两个任务:
-
makeSound()
:发出声音。 -
eat()
:吃东西。
java
interface Animal { void makeSound(); // 任务 1:发出声音 void eat(); // 任务 2:吃东西 }
2. 实现接口的类是完成任务的人
现在有两个类,Dog
和 Cat
,它们都接受了这个任务清单(实现了 Animal
接口),并用自己的方式完成任务。
java
class Dog implements Animal { @Override public void makeSound() { System.out.println("汪汪汪!"); // 狗的任务 1:发出声音 } @Override public void eat() { System.out.println("狗在吃骨头!"); // 狗的任务 2:吃东西 } } class Cat implements Animal { @Override public void makeSound() { System.out.println("喵喵喵!"); // 猫的任务 1:发出声音 } @Override public void eat() { System.out.println("猫在吃鱼!"); // 猫的任务 2:吃东西 } }
3. 使用这些类
java
public class Main { public static void main(String[] args) { Animal dog = new Dog(); Animal cat = new Cat(); dog.makeSound(); // 输出 "汪汪汪!" dog.eat(); // 输出 "狗在吃骨头!" cat.makeSound(); // 输出 "喵喵喵!" cat.eat(); // 输出 "猫在吃鱼!" } }
输出:
汪汪汪! 狗在吃骨头! 喵喵喵! 猫在吃鱼!
你的代码中的 implements Serializable
在你的代码中,User
类实现了 Serializable
接口:
java
import java.io.Serializable; public class User implements Serializable { // 类的实现 }
Serializable
接口的作用
-
Serializable
是一个特殊的接口,它没有任何任务(方法)。 -
它的作用是告诉 Java:“这个类的对象可以被保存到文件或通过网络传输。”
-
如果没有实现
Serializable
,Java 会拒绝保存或传输这个类的对象。
为什么要用 implements
?
-
定义规范:
-
接口定义了一组规范(任务),而实现接口的类必须遵循这些规范。
-
-
提高灵活性:
-
不同的类可以用不同的方式实现同一个接口。例如,
Dog
和Cat
都用不同的方式完成了makeSound()
任务。
-
-
支持多继承:
-
Java 不支持一个类继承多个类,但可以通过实现多个接口来达到类似的效果。
-
总结
-
implements
表示一个类实现某个接口。 -
接口就像任务清单,实现接口的类必须完成所有任务(实现所有方法)。
-
在你的代码中,
User
类实现Serializable
接口是为了支持对象的保存和传输。