Dúvida com interfaces e list<E>

3 respostas
christiancardozo

Olá,
estou com um probleminha aqui e não entendi ainda como resolver…

Estou fazendo uma aplicação gráfica, e para que os componentes sigam um padrão eu criei meus próprios estendendo aos referentes do Swing.
Eu tenho uma classe Cliente que implementa Entidade, e uma classe ComboBox que estende JComboBox. O problema é que não consigo adicionar itens a esta combo.
Eu chamo um método da ComboBox que é para preencher vários itens de uma vez e dá esse problema:

Esse é o método que chama para preencher:

public void preencheVisao(ClienteVisao visao){
		visao.getComboBoxClientes().setItens(this.clientes);
		//outros preenchimentos
	}

Essa é a classe ComboBox:

public class ComboBox extends JComboBox<Entidade>{

	/**
	 * 
	 */
	private static final long serialVersionUID = -6435024382712948104L;
	
	public ComboBox(int x, int y, int w, int h){
		setBounds(x, y, w, h);
	}
	
	public void setItens(List<Entidade> itens){
		for(Entidade item : itens){
			this.addItem(item);
		}
	}
}

3 Respostas

ViniGodoy

Troque seu método por:

public void setItens(List&lt;? extends Entidade&gt; itens){
ViniGodoy

Para mais informações:


christiancardozo

Problema resolvido! Valeu pela ajuda e explicação :slight_smile:

Criado 4 de fevereiro de 2012
Ultima resposta 6 de fev. de 2012
Respostas 3
Participantes 2