2 overrides sobre o msm metodo

3 respostas
felumpe

o problema que estou tendo se resume a essa linha

escolhecurso = new JComboBox(Controle.getObjetos(“Cursos”).toArray());

eu sobreescrevi o metodo toString, para que ele retorne o atributo codigo,
mas uma das chamadas que farei, quero que retorne nome

eu quero que retorne o codigo, e esta retornando
mas uma das chamadas tem que retornar o nome, mas o metodo toString ja esta sobre escrito

como faço então??? nao sei se deu pra sacar, mas qualquer ideia que vcs possam me passar, ja ajuda ^^

grato^^

3 Respostas

yorgan

Poderia explicar a sua necessidade?
Sobrescrever duas vezes não vai dar, mas talvez entendendo onde você quer chegar, possamos chegar a outra solução.

[]'s
Daniel

rodrigo.bossini

felumpe:
o problema que estou tendo se resume a essa linha

escolhecurso = new JComboBox(Controle.getObjetos(“Cursos”).toArray());

eu sobreescrevi o metodo toString, para que ele retorne o atributo codigo,
mas uma das chamadas que farei, quero que retorne nome

eu quero que retorne o codigo, e esta retornando
mas uma das chamadas tem que retornar o nome, mas o metodo toString ja esta sobre escrito

como faço então??? nao sei se deu pra sacar, mas qualquer ideia que vcs possam me passar, ja ajuda ^^

grato^^

Acho que já passei por algo semelhante. Você poderia criar uma classe interna de método, quando precisar de um comportamento diferente para o método toString.
Assim, a sua classe vai ter um toString que retorna o código. Mas quando precisar de algo além do código, ou seja, na hora que for adicionar os objetos ao combobox, vc cria uma classe interna de método que estende da sua classe, somente para sobreescrever o toString.

B

rod.attack:
felumpe:
o problema que estou tendo se resume a essa linha

escolhecurso = new JComboBox(Controle.getObjetos(“Cursos”).toArray());

eu sobreescrevi o metodo toString, para que ele retorne o atributo codigo,
mas uma das chamadas que farei, quero que retorne nome

eu quero que retorne o codigo, e esta retornando
mas uma das chamadas tem que retornar o nome, mas o metodo toString ja esta sobre escrito

como faço então??? nao sei se deu pra sacar, mas qualquer ideia que vcs possam me passar, ja ajuda ^^

grato^^

Acho que já passei por algo semelhante. Você poderia criar uma classe interna de método, quando precisar de um comportamento diferente para o método toString.
Assim, a sua classe vai ter um toString que retorna o código. Mas quando precisar de algo além do código, ou seja, na hora que for adicionar os objetos ao combobox, vc cria uma classe interna de método que estende da sua classe, somente para sobreescrever o toString.

Senhores,

Se querer ser o chato da historia, mas poxa, assim, deem uma olhada na API, para não ficar implementando soluções mirabolantes->POG

1º: O metodo toString do objeto serve para: “Returns a string representation of the object.”, que serve para DEBUG, não para uma apresentação numa GUI.

Segue a URL que está na API de como utilizar de forma prática o combobox, e só para complementar, a solução para o problema dos dois chama-se ListCellRenderer…
http://java.sun.com/docs/books/tutorial/uiswing/components/combobox.html

Criado 1 de julho de 2010
Ultima resposta 2 de jul. de 2010
Respostas 3
Participantes 4