Java-класс CircularFifoBuffer в пакете org.apache.commons.collections.buffer не является универсальным и может хранить объекты любого класса.
Я хотел бы создать обобщенную версию этого, которая может содержать только объекты класса T. Моей первой мыслью было расширить CircularFifoBuffer и просто написать новый метод 'add':
public class CircularFifoQueue<T> extends CircularFifoBuffer {
public boolean add(T data) {
return super.add(data);
}
}
Однако это оставляет старый метод add на месте, позволяя добавлять объекты произвольного класса. Есть ли способ обойти это, используя наследование, а не композицию (чтобы мне не пришлось повторно реализовывать все методы CircularFifoBuffer), но не позволяет пользователям класса добавлять не-T объекты?