写一个称为Command类,它包含一个String域和一个显示该String的operation方法。写第二个类,它具有一个使用Command对象来填充一个Queue并返回这个对象的方法。将填充后的Queue传递给第三个类的一个方法,该方法消耗掉Queue中的对象,并调用它们的operation方法
import java.util.LinkedList;
import java.util.Queue;
class Command
{
private String str;
Command()
{
}
Command(String str)
{
this.str = str;
}
public void operation()
{
System.out.println(str);
}
}
class CommandQueue
{
private Queue<Command> queue;
CommandQueue(Queue<Command> queue)
{
this.queue = queue;
}
public Command push(Command c)
{
if(c != null)
{
queue.offer(c);
}
return c;
}
}
public class Ex27
{
public void print(Queue<Command> queue)
{
while(!queue.isEmpty())
{
queue.poll().operation();
}
}
public static void main(String[] args)
{
Queue<Command> queue = new LinkedList<Command>();
Command command = new Command("Thinking in Java");
CommandQueue commandQueue = new CommandQueue(queue);
commandQueue.push(command);
Ex27 ex27 = new Ex27();
ex27.print(queue);
}
}