Como adicionar objetos num conjunto usando como argmento um genérico meuMetodo(?< super Serializab)?

boa tarde galera do bem,
é o seguinte …

tenho as seguinte classes

import java.io.*;
abstract class Animal {
	public abstract void checkUp();
}

class Bird extends Animal implements Serializable {
	public void checkUp() {
		System.out.println("Bird checkup!");
	}
}

class DoctorAnimal {
	public static void main(String[] args) {
               DoctorAnimal da = new DoctorAnimal();
               List<Bird> bird = new ArrayList<Bird>();
	       da.addAnimal4(bird);
        }

        public void addAnimal4(List<? extends Serializable> brd) {
		if (brd instanceof Bird)
			brd.add(new Bird());
	}
}

Prosseguindo… como faço para adicionar esse bird no meu conjunto? ja tentei com <? super …> mais ocorre erro. Tenho que mater o Serializable na minha assinatura.

que tal assim?

private static <T> void adicionar(List<T> objetos) { for (T objeto: objetos) { if (!objetos.contains(objeto)) { objetos.add(objeto); } } }