根据接口DataStorage的定义,定义Queue队列类,实现该接口实现过程中必须进行异常处理。

根据接口DataStorage的定义,定义Queue队列类,实现该接口实现过程中必须进行异常处理。

inerface DataStorage

public void put(T s);
public T get();

boolean isEmpty();

不难实现

DataStorage.java

package cv.kaka.mk.sample2;

/**
 * 
 * @author koo
 *
 * @param <T>
 */
public interface DataStorage<T> {

    public void put(T s);

    public T get();

    boolean isEmpty();
}

DataStorageImpl.java

package cv.kaka.mk.sample2;

import java.util.Queue;

/**
 * 
 * @author koo
 *
 * @param <D>
 * 
 *            {@link #put(Object)}
 * 
 *            {@link #get()}
 * 
 *            {@link #isEmpty()}
 * 
 */
public class DataStorageImpl<D> implements DataStorage<D> {

    /**
     * {@see LinkedList}
     */
    private Queue<D> queue;

    public DataStorageImpl(Queue<D> queue) {
        super();
        this.queue = queue;
    }

    @Override
    public void put(D s) {
        queue.add(s);
    }

    @Override
    public D get() {
        return queue.peek();
    }

    @Override
    public boolean isEmpty() {
        if (queue == null) {
            return true;
        }
        return queue.isEmpty();
    }

}