4

这是我在这里提出的第一个问题,所以我可能会做错一些事情。

我希望声明一个我知道是实现接口的类的变量。

private <T extends Executable> T algorithm;

这是我实现目标的尝试

4

3 回答 3

6

您不必为此使用泛型。以下内容适用于 Executable 的任何子类/实现:

private Executable algorithm;
于 2013-06-18T19:53:13.143 回答
3

您不能在字段声明中引入类型参数。它必须是类本身引入的。

例如

 public class MyClass<T extends Executable> {
     private T algorithm;
于 2013-06-18T19:52:27.757 回答
3

只需将其声明为接口或它所看到的类,无论如何该类都必须实现该接口。取决于你如何需要它。但是您必须像这样声明实例变量。

private YourInterfaceName variablename;
private ClassName variablename;

然后在构造函数中启动它们。

也许这个教程可以帮助你更多地了解变量。

于 2013-06-18T19:54:38.707 回答