0

我有一个名为 Layer 的接口:

public interface Layer {}

和一个实现该接口的类,称为VectorLayer

public class VectorLayer implements Layer {}

我还有一个Layer作为参数的函数

public void create(Layer layer){}

我想使用create(new VectorLayer())但 eclipse 向我抛出以下错误:

SelectFeature 类型中的方法 create(Layer) 不适用于参数 (VectorLayer) VolexampleApplication.java /volExample/src/com/example/volexample

我认为通常它应该工作。那么这里的问题是什么?

PS:
VectorLayerLayerSelectFeature.create()来自 VAADIN 的 openlayers 包装器(一个库)的函数和类。

4

2 回答 2

3

您给出的示例应该可以正常工作。

您确定Layer实施的VectorLayer方式与所要求的相同吗SelectFeature?您可以通过检查两个类中的导入来验证这一点(或给出完全限定的名称,即包名称)。

于 2012-12-04T09:31:55.233 回答
1

我会尝试帮助编译器:

final Layer layer = new VectorLayer();
SelectFeature.create(layer);
于 2012-12-04T09:30:03.323 回答