Java实例化Queueadt的实现

时间:2018-04-26 16:15:30

标签: java arrays queue

这是关于实例化ADT实现的语法的一般性问题。

所以我创建了一个实现Queue接口的类调用Airline,我需要一个到达队列的实例化,例如,基于航空公司类型

之间有什么区别
private Queue<Airline> queue = new Queue<>();

private Queue<Airline> queue = new Queue<Airline>();

1 个答案:

答案 0 :(得分:0)

private Queue<Airline> queue = new Queue<Airline>();

以上是自Java 5发布以来必须指定泛型类型的方式。您有Queue泛型类型Airline,因此实例化它因此(在右侧)和声明它(在左侧)。

然而,Java 7引入了diamond operator,它允许实例化的泛型类型被声明<声明< / EM>:

private Queue<Airline> queue = new Queue<>();

所以在这个例子中,编译器推断实例化的类型应该是声明中的Queue<Airline>,并将其视为这样。

正如上面的评论所说,差异纯粹是语法糖,所以纯粹是编译。对于这两种情况,编译的字节码和运行时行为都是相同的。