这是我在这里提出的第一个问题,所以我可能会做错一些事情。
我希望声明一个我知道是实现接口的类的变量。
private <T extends Executable> T algorithm;
这是我实现目标的尝试
您不必为此使用泛型。以下内容适用于 Executable 的任何子类/实现:
private Executable algorithm;
您不能在字段声明中引入类型参数。它必须是类本身引入的。
例如
public class MyClass<T extends Executable> {
private T algorithm;
只需将其声明为接口或它所看到的类,无论如何该类都必须实现该接口。取决于你如何需要它。但是您必须像这样声明实例变量。
private YourInterfaceName variablename;
private ClassName variablename;
然后在构造函数中启动它们。
也许这个教程可以帮助你更多地了解变量。