Criar objeto generico é possivel?

Estou tendo um pequeno grande problema que não estou conseguindo resolver.
Tenho uma classe chamada Transforma, está classe tem um metodo pega uma string que pode conter números, letras entre outros caracteres, e transforma esses caracteres em uma espécie de código, Exemplo eu escrevo ?WOrlando? ela me devolve a string ?2315101101130423?

[code]public class Transforma {

String transforma = "";

Tabela1 codigo = new Tabela1();


public String Codifica(String texto) {
	int length;// variavel para o tamanho da string para codificar
	length = texto.length();// pega o tamanho da string

for (int i = 0; i < length; i++) {// for para transformar a string
// buscando e tranformando a string
transforma += codigo
.Transforma(Character.toString((texto.charAt(i))));
}
return transforma;// retorna a string completa
}[/code]

O problema é o objeto ?codigo?, que no caso é o objeto que contem os códigos, esse objeto foi criado utilizando a classe Tabela1
public class Tabela1 {

[code] public String Transforma(String letra) {
switch (letra) {
case (“A”):
return “01”;
case (“B”):
return “02”;
case (“C”):
return “03”;
case (“D”):
return “04”;
case (“E”):
return “05”;
case (“F”):
return “06”;
case (“G”):
return “07”;
//…
}

	return "(ERRO: "+letra+" )";
}

}[/code]

que contem os códigos utilizados para transformar a string, porem eu possuo 6 tabelas, Tabela1, Tabela2, Tabela3…; ambas são iguais mudando somente o valor de retorno. Essas tabelas são usadas cada vez que uma String é passada, podendo ser qualquer uma das 6 tabelas, neste caso pretendo usar um Random para escolher a tabela, o problema é como criar um objeto ?codigo?, ou algo satisfatório para que possa utilizar todas as tabelas; pensei em usar uma classe genérica, mas não consegui, não sei muito bem ainda como utiliza generic, mas eu tinha pensado(isso é se for possível) em simplesmente criar um objeto genérico e instanciar com a tabela escolhida pelo ramdon, não tenho mais ideias já tentei um monte de coisa, alguém tem alguma ideia para me ajudar.

  1. Faça todas as classes Tabela implementarem a mesma interface;
  2. Faça um array de tabelas

Você quer poder passar qualquer tabela para poder transformar o seu código ? é isso ? caso seja, você pode usar interfaces (sem mexer muito na sua implementação), agora eu acho que você poderia também criar Arrays com o mesmo número de posições e cada posição contém o código que equivale a um código.

Nossa, tinha me esquecido completamente da interface, valeu pessoal deu certo aqui, qualquer coisa eu volto.

Só pra constar, essa é a típica aplicação do padrão Strategy,

Vou ser o primeiro a perguntar:

Que problema você está tentando resolver com esse transforma? Não o que você está querendo saber agora, mas o que aconteceu para o Transformar existir?

[quote=Bruno Laturner]Vou ser o primeiro a perguntar:

Que problema você está tentando resolver com esse transforma? Não o que você está querendo saber agora, mas o que aconteceu para o Transformar existir?[/quote]

ué, pra mim ficou bem claro que ele está fazendo uma criptografia básica.

[quote=rmendes08][quote=Bruno Laturner]Vou ser o primeiro a perguntar:

Que problema você está tentando resolver com esse transforma? Não o que você está querendo saber agora, mas o que aconteceu para o Transformar existir?[/quote]

ué, pra mim ficou bem claro que ele está fazendo uma criptografia básica.[/quote]

Isso ae, é uma criptografia básica, exercício de treinamento