第 12 章:以为 Rust 没有接口?以为没有泛型?
错了!Rust 有的是 Traits 和 Generics,比 Java 的接口和泛型强大一千倍。
Java 的接口系统?20 年前的设计。Rust 的 Trait 系统?21 世纪的现代抽象。
准备好被彻底震撼吧。
Java 接口:功能有限的古董
Java 接口的局限
// Java 接口:只能定义方法签名
interface Drawable {
void draw();
// 不能定义字段
// 不能定义静态方法(Java 8之前)
// 不能为现有类型实现接口
}
class Circle implements Drawable {
public void draw() {
System.out.println("Drawing a circle");
}
}问题一览: