【发布时间】:2015-02-11 20:44:28
【问题描述】:
我认为这是一个简单的问题,如果已经问过,请原谅重复。
我正在使用 JUNG-2.0.1 工具集编写一个图形分析工具(如果您以前没有使用过,这是非常酷的东西)。无论如何,我的 java 程序中有以下类结构。
public edge() {}
public vehicle() {}
public car() extends vehicle {}
public truck() extends vehicle {}
现在,在为图形查看器类编写代码时,标题被写为
public customgraphviewer<node, edge>() {}
如果我把类头写成
public customgraphviewer<vehicle, edge>() {}
它会接受汽车或卡车对象吗?我认为它会因为两个类都从同一个父类继承,所以它们的类型相同。我是正确的还是我应该做的其他事情。
劳伦斯-
【问题讨论】:
-
你必须学习泛型类型变量声明语法。声明
public class Something<Vehicle, Edge>会创建两个新类型变量,分别命名为Vehicle和Edge。这些类型与您的Vehicle和Edge完全无关。 -
另外,你提供的类结构不是 Java;在 Java 中,您使用
edge()等作为构造函数,而不是用于类声明。另外,因为小写名称何时是符合 JLS 的类名? IFTFY - 如果您使用某种特定于应用程序的标记,请不要将其标记为通用“java”,否则请为您的代码使用有效的 Java 约定。目前尚不清楚您在这里真正要问的是什么,以及您对手头的主题是否有最低限度的了解。 -
我正在回滚我的更改,直到有人可以向我解释这里真正问的是什么。
标签: java class generics inheritance