[RESOLVIDO] Obter o nome do Objeto

Galera, desculpe pela ignorância neste sentido, mas estou precisando fazer com que um objeto consiga saber o nome dele, por exemplo o código abaixo:

Carro carro = new Carro();

preciso de algum método que faça com que o objeto “carro” saiba que o nome dele é “carro”… de maneira automática
outro exemplo

Carro carroAmarelo= new Carro();

neste caso o nome esperado é “carroAmarelo”…

Até onde eu sei, o Java infelizmente não oferece o recurso de uma variável poder consultar o próprio nome. Uma saída seria criar esse atributo em seus objetos e passar o valor adequado no construtor.

Essa realmente foi a unica opção que encontrei, inclusive estou usando… mas seria uma boa se desse para pegar o valor dinamicamente hein…

Se eu tiver alguma novidade posto aqui, caso você descubra algo… por favor informe… Valeu !

não sei se entendi muito bem a sua dúvida, mais você pode sobreescreve o método toString(), e retornar por exemplo “carro” + o valor de algum atributo da sua classe.

public  String toString(){  
     return "carro"+this.cor;  
} 
Carro carroAmarelo = new Carro();
carroAmarelo .cor = "Amarelo";

System.out.println(carroAmerelo.toString());

Não Thiago, o que preciso é fazer com que um objeto saiba o nome dele.

No exemplo que mencionei acima (carroAmarelo) é um objeto da classe Carro.
O que eu queria fazer é algo do tipo:

carroAmarelo.getName(); 

e esse cara retornar o proprio nome, neste caso “carroAmarelo”

[quote=ivesbertoli]Galera, desculpe pela ignorância neste sentido, mas estou precisando fazer com que um objeto consiga saber o nome dele, por exemplo o código abaixo:

Carro carro = new Carro();

preciso de algum método que faça com que o objeto “carro” saiba que o nome dele é “carro”… de maneira automática
outro exemplo

Carro carroAmarelo= new Carro();

neste caso o nome esperado é “carroAmarelo”…[/quote]

não só não é possivel, como seria incorreto ter essa funcionalidade. A variável é onde fica uma referencia ao objeto e diferentes variáveis podem referir-se ao mesmo objeto, e diferentes objetos pode ser referenciados pela mesma variável ( não simultaneamente, é claro)

Portanto, essa feature seria completamente embecil e ilógica se existisse. Se o “nome é do objeto” deve existir uma propriedade “nome” no objeto. São simples assim. Fazer isto não é uma limitação do java ou da OO. É como lógicamente deve ser.

1 curtida

agora entendi…e concordo plenamente sergiotaborda.

Carro carro = new Carro();
Carro carroamarelo = carro;

Neste caso carro e carroamarelo seriam o mesmo objecto, independentemente do nome que deres à variável.

1 curtida

Concordo contigo sergiotaborda, enfim, para o uso que estou propondo aqui vou precisar dessa informação, assim sendo, vou manter a ideia incial de criar um atributo que guarde essa informação.

Valeu pela colaboração pessoal;