Guava 的
Preconditions
类定义为:
public final class Preconditions {
private Preconditions() {}
private interface Impossible {}
// (static methods that are not using Impossible)
}
我知道未使用的私有构造函数会阻止类被实例化,但我以前从未见过未使用的私有接口。它也不是一个标记接口,因为没有类实现
Impossible
。这个接口有什么用途吗?
Guava 的源代码是从 Google 内部镜像的,并且一些 API 被过滤掉了开源版本。 其中一些使用了
Impossible
。 (想必也应该被过滤掉,但是被漏掉了。)