Java:尝试将对象添加到 BlockingQueue 时出现 NullPointerException?

标签 java initialization blockingqueue

我发现了一个关于 PriorityQueue 的类似问题,该问题的错误是它没有正确初始化。我可能有同样的问题,但我不知道如何正确初始化它!

到目前为止我只是这样做:

BlockingQueue myQueue = null;

但是当我尝试向列表中添加某些内容时,就会抛出异常。

如何正确初始化 BlockingQueue?

最佳答案

BlockingQueue<E> 是一个接口(interface)。您需要选择该接口(interface)的特定实现,例如 ArrayBlockingQueue<E> ,并调用其 constructors 之一像这样:

BlockingQueue<E> myQueue = new ArrayBlockingQueue<E>(20);

如果您不确定 JDK 中存在哪些不同类型的阻塞队列,请查看 "All Known Implementing Classes" .

关于Java:尝试将对象添加到 BlockingQueue 时出现 NullPointerException?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7518840/

相关文章:

Java BlockingQueue 似乎在传输过程中损坏了数据

java - 离开 SettingsActivity 时应用强制关闭

java - 记录已删除对象的 BlockingQueue 装饰器

java - 如何使用 JUnit 5 测试 Kafka 消息消费者的 PACT

c++ - 默认基类初始化器

c++ - 为什么在 C++ 中有不同的变量初始化方式?

c++ - 将 int 矩阵数组放入 C++ 对象时出现问题

Java 静态 Synchronized 与 BlockingQueue 实现

java - 杀死特定的 Java 线程 (Debian)

java - 创建一个新对象以避免空指针异常是否正确?