1

我在这个问题上挣扎了几个小时,我希望你能帮助我。

我有一个定义了一些方法的接口:

public interface LanguageInterface {
         //...
}

有一个实现 LanguageInterface 的类

public class ZPL implements LanguageInterface {
    // ...
}

现在我想创建一个包含所有这些类的枚举。

public enum PrintingLanguage {
   ZPL(ZPL.class);

   private Class<LanguageInterface> clazz;

   PrintingLanguage(Class<LanguageInterface> clazz) {
      this.clazz = clazz;
}

现在我总是得到一个日食,上面写着

构造函数 PrintingLanguage(Class< ZPL >) 未定义

我只是想让构造函数只接受实现这个接口的类。

我怎样才能使这项工作?

提前致谢!

4

1 回答 1

5

您希望Class<? extends LanguageInterface>, 允许扩展接口的任何类型参数。

于 2014-10-03T15:04:13.050 回答