Duvidas sobre Override

4 respostas
Higashi

Ola.. estou tendo problemas para tratar um método add(), e desenvolvi este exemplo para mostrar o problema,
Na classe Run abaixo tenho o método que faz o get() de um HashMap, adiciona um novo papel + adiciona um Objeto ou insere em um papel ja existente
Porém eu precisava tratar de alguma forma o add, ou seja, antes dele inserir preciso saber o que ele está inserindo
Como eu posso fazer isso na forma que está ai?

public class Run{
	
	public static void main(String[] args) {
		
		Tipo celta = new Carro();

		Tipo vtec  = new Motor();
		Tipo vhc   = new Motor();

		
		celta.get("motores").add(vtec);	
		celta.get("motores").add(vhc);
		
	}

}
public abstract class Tipo{

	static HashMap<String, List> valor = new HashMap<String, List>();	
	public String papel;

	public List get(String papel) {
		this.papel= papel;
		
		List retorno = this.valor.get(this.papel);

        if (retorno == null) {

		    retorno = new ArrayList();	
			
            this.valor.put(papel, retorno);
			
		} 
		
		return retorno;
	}
	
}

Alguma dica?

4 Respostas

E

Seu List é List de o quê?

Higashi

Object

E

OK, a primeira coisa então é trocar List por List e ArrayList por ArrayList. O que ocorre depois?

Higashi

infelizmente não estou mais em casa e não posso testar… mas meu principal problema é tratar o add() antes de realmente adicionar no List

chegando em casa eu testo e posto aqui mais tarde

Obrigado

Criado 22 de maio de 2012
Ultima resposta 22 de mai. de 2012
Respostas 4
Participantes 2