Parametrização e vetores de Objetos Complexos

1 resposta
tabocu

Boa tarde,

Gostaria de pedir sua ajuda a respeito de uma duvida que tive sobre parametrização.
Estou tendo dificuldades quanto a alocação de vetores formados por objetos parametrizados complexos.
Abaixo estão duas classes, a primeira trata-se do objeto utilizado como elemento do vetor e a segunda trata-se do objeto que utilizará este objeto.
Dentro do construtor da segunda classe tentei alocar o vetor, porem nao consigo indicar o tipo parametrizado nela.
Deixei um indicativo na linha correspondente.

public class elemento <tipo> implements Cloneable{
   
    private tipo valor_cel;  //Valor do elemento
    private int coluna_pos;  //Coluna a qual o elemento pertence
   
    //////////Construtor
    public elemento(tipo valor, int idcoluna){
        valor_cel = valor;
        coluna_pos = idcoluna;
    }
   
    //////////Recebe ou retorna o valor
    public void valor(tipo valor){
        this.valor_cel = valor;
    }
   
    public tipo valor(){
        return this.valor_cel;
    }
   
    //////////Elementos de acesso a coluna
    public void idColuna(int idcoluna){
        this.coluna_pos = idcoluna;
    }
   
    public int idColuna(){
        return this.coluna_pos;
    }
   
    public Object clone(){
        elemento <tipo> clone = new elemento<tipo>(this.valor_cel,this.coluna_pos);
        return clone;
    }
}

public class linha <tipo> {
    private elemento<tipo> elemento_vet[];  //Vetor de elementos (linha)
    private int linha_pos;  //Numero da linha
    private int tamanho_vet;  //Tamanho do vetor
   
    //Construtor
    public linha(int idlinha, int tamanho){
        elemento_vet = new elemento[tamanho]; /////COMO DEVO ALOCAR O TAMANHO DO VETOR NESTA PARTE COM O TIPO PARAMETRIZADO "<tipo>"?
        linha_pos = idlinha;
        tamanho_vet = tamanho;
    }
}

1 Resposta

tabocu

Alias deem uma olhada nesse codigo

public class Diagonal <tipo> {
	private tipo elementos_vec[];
	private tipo acima_vec;
	private tipo abaixo_vec;
	
	public Diagonal(int dimensao, tipo acima, tipo abaixo){
		elementos_vec[] = new tipo[dimensao]; //Aqui eu tbm nao consegui
		acima_vec = acima;
		abaixo_vec = abaixo;
	}
}
Criado 21 de julho de 2010
Ultima resposta 21 de jul. de 2010
Respostas 1
Participantes 1