定义objQueue也会得到相同的结果。
public class objQueue extends Vector<Object>
{
...
}
...
objQueue<Customer>[] line=new objQueue<Customer>[num]; //error given on this line
我将其更改为公共
class objQueue<Object> extends Vector<Object>
,但现在显示为Cannot create a generic array of objQueue<Customer>
。我想定义自己的队列,是否应该命名Queue或其他名称以避免冲突?我正在使用import java.util.*;
如果将其更改为
objQueue<Customer> [] line=new objQueue[num];
,则会发出警告:类型安全:objQueue []类型的表达式需要未经检查的转换才能符合objQueue [] 最佳答案
假设您指的是Queue
,对于java.util.Queue
来说应该没问题。您不能为objQueue
指定类型参数,因为它没有被声明为泛型。您必须将其声明为:
public class ObjQueue<E> extends Vector<E>
或类似的东西。
关于java - 队列类型不是通用的;不能使用参数<Customer>对其进行参数化,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9722360/