PQ? os dois construtores?

class VisualizadorImagem {
VisualizadorImagem(String texto) {
Integer.parseInt(texto);
System.out.println("Texto: " + texto);
}

VisualizadorImagem(int valor) {
	this(""+valor);
	System.out.println("Valor " + valor);
}

}

public class teste {

public static void main(String args[]) {
	 VisualizadorImagem tipo = new  VisualizadorImagem(15);
}

}

Gostaria de tentar entender o porque que esse codigo compila os dois Construtores?

help me!

mano ta vendo na primeira linha?

this("" + valor) ele passa uma string pro outro construtor…

que executa mostra o texto

e depois continua do this que mostra valor.

Obs: o “” é um “cast” para string mtu utilizado por gambiadores. ( Programadores que gostam de fazer gambiarras^^ ).

Abraço ae!

           Na verdade isto se chama fazer "Overload" de um construtor, voce pode declarar dois construtores ou metodos com mesmo nome, desde que aceitem parametros diferentes, assim quando voce chamar o construtor ou metodo e passar parametros, a jvm vai saber qual construtor ou método chamar atravez do tipo de parametro que voce esta passando.

Abraços

André