Tra gli esempi dellla guida java proposta sul sito, mi sono imbattuto in questo

Codice PHP:
class persone
{
  
// Proprietà
  
public int annodinascita;
  public 
String Cognome=new String();

  
// Costruttori
  
public persone(int annonascita)
  {
    
this("Non Conosco"); //<----
    
this.annodinascita annonascita;
  }

  public 
persone(String Cognome)
  {
    
this(0); //<---
    
this.Cognome Cognome;
  }
  
  public 
persone(int annonascita String Cognome)
  {
    
annodinascita annonascita;
    
this.Cognome Cognome;
  }
  
  
// Metodo che calcola l'età del soggetto
  
public int calcolaeta (int annoattuale)
  {
    return (
annoattuale annodinascita);
  }

Ora facciamo che io istanzio un oggetto in questo modo
persone Pietro = new persone(1974);

il costruttore mi lancia la funzione public persone(int annonascita) che a sua volta rimanda alla funzione public persone(String Cognome) (tramite il this("Non conosco") ) , che a sua volta rimanda nuovamente alla funzione public persone(int annonascita) (tramite il this("0") ) e così via.

Non si genera in questo modo un loop infinito? E se no, perchè?