Java在不同的对象中使用泛型类对象
问题描述:
我认为这是一个简单的问题需要回答,如果已经被问到,请原谅重复。Java在不同的对象中使用泛型类对象
我正在使用JUNG-2.0.1工具集编写一个图形分析工具(如果您以前没有使用过非常酷的东西)。无论如何,我的Java程序中有以下类结构。
public edge() {}
public vehicle() {}
public car() extends vehicle {}
public truck() extends vehicle {}
现在,编写代码,如果我写的类头为
public customgraphviewer<vehicle, edge>() {}
,将接受任何汽车的头被写成
public customgraphviewer<node, edge>() {}
图形浏览器类时或卡车对象?我认为这将是因为从同一父类继承的两个类都有相同的类型。我是对的还是有我应该做的其他事情。
劳伦斯 -
答
我认为最好的办法是使用通配符参数,缩小它归结为已知的超:
public customgraphviewer<? extends vehicle, edge>() {}
+0
这是什么?该行代码中没有任何部分是有效的Java。 – 2015-02-12 16:26:13
你必须学会泛型类型变量声明的语法。声明'public class Something'创建两个**新类型变量**,名为'Vehicle'和'Edge'。这些类型与您的'Vehicle'和'Edge'完全无关。 –
2015-02-11 20:47:17
也是,你提供的类结构是* not * Java;在Java中,您使用'edge()'等构造函数,而不是类声明。此外,因为当小写名称是JLS兼容的类名? IFTFY - 如果您使用某种特定于应用程序的标记,请不要将其标记为一般的“java”,否则使用有效的Java约定代码。目前还不清楚你在这里问的是什么,以及你是否对当前主题有一点了解。 – vaxquis 2015-02-11 20:48:09
我回滚我的修改,直到有人能向我解释*这里真正问到的是什么*。 – vaxquis 2015-02-11 20:54:30