[英]Arrays.asList compilation problem
我已经使用Arrays.asList数十次,即使没有数百次也没有问题。 从6.8切换到NetBeans 6.9后,以前的突然编译代码突然无法编译。 这是有问题的几行:
Node n = new NickNode(4,5);
Node m = new NonLocatableNode();
Node subclass = new NickSubclassNode();
List<Node> nodes = Arrays.asList(n,m,subclass);
node的子类并不重要; 他们编译很好。 给我一个错误的行是Arrays.asList行。 我得到错误
替代文字http://grab.by/grabs/b553ffb898ca0874ef4741b8c87fc576.png
我不知道从哪里可以获得有关HelpCtx.Provider []的信息。有人看到此代码片段有问题吗?
将asList行替换为
List<Node> theNodes = new LinkedList<Node>();
theNodes.add(n);
theNodes.add(m);
theNodes.add(subclass);
工作正常。 但我更喜欢Arrays.asList的较短语法
尝试这个
List<Node> nodes = Arrays.<Node>asList(n,m,subclass);
您的错误图片对我没有显示,但看起来像是泛型问题。 从netbeans 6.8迁移到6.9时,也许编译器警告切换为编译器错误?
尝试将您的列表声明为...
List<? extends Node> nodes = Arrays.asList(n, m, subclass);
通配符语法指定列表包含Nodes以及从Node继承的任何内容。
是的,这是已经报告过的NetBeans 6.9中的错误,因此希望它将尽快得到解决。 您可以在此处看到该错误报告
它应该是:
List<? extends Node> nodes = Arrays.asList(n,m,subclass);
请记住:
List<Sub Class> is not a sub class for List<Parent Class>
他们是不同的阶级。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.