Se invece si
riutilizzano i costruttori
public class Elaboratore3
{
protected String CPU;
protected int RAM,
hardDisk;
public Elaboratore3(String vCPU,
int vRAM,
int vHardDisk)
{
CPU=vCPU;
RAM=vRAM;
hardDisk=vHardDisk;
}
} public class PC3 extends Elaboratore3
{
protected String periferiche;
public PC3(String vCPU,
int vRAM,
int vHardDisk,
String vPeriferiche)
{
super(vCPU, vRAM, vHardDisk);
this.periferiche=vPeriferiche;
}
} public class Notebook3 extends PC3
{
protected String dimensioni,
peso;
public Notebook3(String vCPU, int vRAM, int vHardDisk,
String vPeriferiche,
String vDimensioni, String vPeso)
{
super(vCPU, vRAM, vHardDisk, vPeriferiche);
this.dimensioni=vDimensioni;
this.peso=vPeso;
}
public String toString()
{
String risp;
risp = CPU + ", RAM: " + RAM + "MB, Hard Disk: " + hardDisk + "GB" +
"\n" + "Periferiche aggiuntive: " + periferiche +
"\n" + "Dimensioni: " + dimensioni + ", peso: " + peso;
return risp;
}
} è possibile inizializzare un oggetto della classe Notebook3 ---> PC3 --> Elaboratore3,
con tutti i dati necessari, in un'unica istruzione
Notebook3 computer = new Notebook3("MicroP 2,4 GHz", 256, 40, // per Eleboratore3()
"lettore DVD", // per PC3()
"29,9-23,0-5,5 cm", "2,9 Kg"); // per NoteBook3() |