为什么不能重写enqueue什么泛型擦除?。。。

来源:3-5 数组队列

okTheWinner_

2018-12-05

在实现接口中带有泛型的方法的时候编译器报错,用编译器自动找错就会把泛型变成了public void enqueue(Object o).前面的那个栈的时候也是.

写回答

1回答

liuyubobobo

2018-12-05

这个课程的所有代码都可以通过官方github获得,传送门:https://github.com/liuyubobobo/Play-with-Data-Structures 

请尝试在你的环境运行官方代码,看是否有同样的问题?如果没有问题,请仔细比较调试自己的代码实现和官方代码的区别:)


如果也有问题,请确认一下自己的环境的JDK是8或者以上版本。本课程的所有Java代码都是基于JDK8的:)


==========


重点关注:

请确认你的类声明是正确的。比如ArrayStack的声明应该是:public class ArrayStack<E> implements Stack<E>

实现的Stack接口也是需要泛型的!:)


加油!:)


0
0

玩转数据结构

动态数组/栈/队列/链表/BST/堆/线段树/Trie/并查集/AVL/红黑树…

6221 学习 · 1704 问题

查看课程