Sto studiando le classi innestate e stavo guardando un esempio:
codice:
public class AutoNoInner
{
private String statoMotore;
private MeccanicoNoInner meccanico;
public AutoNoInner()
{
meccanico = new MeccanicoNoInner(this);
}
public void setStatoMotore(String statoMotore)
{
this.statoMotore = statoMotore;
}
public String getStatoMotore()
{
return statoMotore;
}
}
public class MeccanicoNoInner
{
private AutoNoInner auto;
public MeccanicoNoInner (AutoNoInner auto)
{
this.auto = auto;
}
public void aggiustaMotore()
{
auto.setStatoMotore("buono");
}
}
Il manuale dice che utilizzando una classe innestata la situazione si semplifica molto:
codice:
public class Auto
{
private String statoMotore;
public class Meccanico
{
public void aggiustaMotore()
{
statoMotore = "buono";
}
}
}
Io però non riesco a capire come possa trasformare così quella classe. Dove sono finiti i costruttori di Auto e Meccanico?