Cursos / Automação Industrial / Programação Orientada a Objetos / Aula
No exemplo abaixo, o tipo do atributo _id
e o tipo do parâmetro recebido no método adicionar
são definidos na variável de tipo da classe <T,K>
. No exemplo, temos a implementação de dois tipos de lista, uma de string e outra de number.
class ListaGenerica<T,K>{
private _id: K
lista: T[] = [];
constructor(id: K){
this._id = id;
}
adicionar(arg: T){
this.lista.push(arg);
}
imprimir(){
this.lista.forEach(e => console.log(e));
}
public get id() : K {
return this._id
}
}
let listg = new ListaGenerica<number, string>("xyz");
listg.adicionar(10);
listg.adicionar(15);
listg.adicionar(3);
listg.imprimir();
console.log(listg.id)
let listg2 = new ListaGenerica<string,number>(12);
listg2.adicionar('texto-01');
listg2.adicionar('texto-02');
listg2.adicionar('texto-03');
listg2.imprimir();
console.log(listg2.id)
Versão 5.3 - Todos os Direitos reservados