Java声明一个实现接口的变量

时间:2013-06-18 19:50:27

标签: java interface

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

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

private <T extends Executable> T algorithm;

这是我尝试实现目标

3 个答案:

答案 0 :(得分:6)

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

private Executable algorithm;

答案 1 :(得分:3)

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

e.g。

 public class MyClass<T extends Executable> {
     private T algorithm;

答案 2 :(得分:3)

只要声明它作为接口或类看到该类必须实现接口。根据您的需要而定。 但是你必须像这样去掉实例变量。

private YourInterfaceName variablename;
private ClassName variablename;

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

也许这个toutorial可以帮助您了解有关变量的更多信息。