扩展 Guava 库时构造函数 BaseEncoding() 不可见

The constructor BaseEncoding() is not visible when extending Guava libraries

已有与此错误相关的不同问题,但 none 与此特定 class 相关,即 BaseEncoding

当我在 class 上扩展 BaseEncoding 时,出现此错误,

The constructor BaseEncoding() is not visible

这是代码,

import com.google.common.io.BaseEncoding;

public class TheRace extends BaseEncoding{

    public TheRace() {
        super();
    }
}

根据这个答案,Constructor not visible

我理解 BaseEncoding() 构造函数必须期待一些参数,但是当我访问它的官方文档时,没有定义构造函数。

BaseEncoding class 中没有参数化构造函数时,如何传递参数来解决我的问题?

BaseEncoding 是一个 abstract class. It cannot be instantiated! Therefore defining a constructor isn't necessary (Although ).

为了获取 BaseEncoding 类型的(静态)对象,class 确实定义了一些工厂方法(例如,BaseEncoding.base16())。

BaseEncoding 不应该被子class编辑;它的构造函数被特意设置为 private,并且在 class 之外不可见。您应该使用 base16().

等工厂方法获取它的实例