[RESOLVIDO]Métodos com o mesmo nome da classe

Estava assistindo uma vídeo aula e nela o cara deu o mesmo nome para o método e a classe, não sabia que algo assim era possível, e como consequência ele não definio o tipo de retorno para a classe , gostaria de saber quais são as consequências de se ter o mesmo nome na classe e de um método dela? e por quê não é preciso dizer qual é o tipo de retorno nessas cituações?

segui o link com a vídeo aula -> http://www.youtube.com/watch?v=LSy6vlsDUVk&list=SPA03DEA5320ECBF85&index=74&feature=plpp_video

Procure sobre métodos construtores.

1 curtida

[quote=Ar0n]Estava assistindo uma vídeo aula e nela o cara deu o mesmo nome para o método e a classe, não sabia que algo assim era possível, e como consequência ele não definio o tipo de retorno para a classe , gostaria de saber quais são as consequências de se ter o mesmo nome na classe e de um método dela? e por quê não é preciso dizer qual é o tipo de retorno nessas cituações?

segui o link com a vídeo aula -> http://www.youtube.com/watch?v=LSy6vlsDUVk&list=SPA03DEA5320ECBF85&index=74&feature=plpp_video[/quote]

class Cachorro{
   String corPelo;

   //1
   public Cachorro(){
      corPelo = "preto";
   }

   //2
   public int Cachorro(){
      return 1;
   }
}

O código acima é perfeitamente válido. 1 é um construtor. Construtores são invocados ao criar-se um objeto com new. A assinatura de um construtor deve ter modificador de acesso, e nome da classe. Ele pode ter uma lista de parâmetros, mas não deve declarar tipo de retorno.
Por outro lado, é perfeitamente possível declarar um método como o mesmo nome da classe. Isso é permitido porque não gera ambiguidade para o compilador. Mas pode confundir a leitura.
[/code]

Não já me liguei foi vacilo meu é porquê nunca tinha visto métodos construtores dentro de uma classe com o método main, só uso em outras classes e chamo no na clase que tem o main, ai foi lerdeza minha mesmo :oops: :oops: :oops: nem passou pela minha cabeça q aquilo era um construtor.

Bem, mesmo assim muito obrigado a todos.