有两个班级。一,frame_size
,它有自己的blockingQueue和返回它的方法:
X
但它似乎返回队列的引用。我需要在public int getQueue(){
return TaskQueue;
}
的其他班级Y
中对其进行操作。那么有没有办法用getter / setter传递队列?
答案 0 :(得分:1)
public int getQueue()
{
return TaskQueue;
}
您正在尝试将 TaskQueue类作为 int 而不是您的TaskQueue对象返回。
我不知道您的代码结构如何,但这里有一个您想要做的例子:
class X
{
private BlockingQueue taskQueue;
public X()
{
taskQueue = new BlockingQueue();
}
public BlockingQueue getQueue()
{
return taskQueue;
}
}
你可以在任何其他类中使用它:
X myXClassObject = new X();
myXClassObject.getQueue().blockingQueueMethod();
或以更易理解的方式:
X myXClassObject = new X();
BlockingQueue myQueue = myXClassObject.getQueue();
myQueue.blockingQueueMethod();
myQueue.take();