Sinceramente non ho capito molto ..
premessa ..
ma l'istanza di un oggetto non viene fatta con il 'new' ?
codice:
Veicolo V; // istanza della classe padre
Quanto al fatto che non si potrebbe chiamare i metodi della superclasse tramite la sottoclasse ..
l'esempio seguente non lo fà ?? .. forse si intende qualcos'altro ?
metodi della classe padre richiamati dalle sottoclassi:
getNumeroPosti() - getNumeroMotori()
codice:
class Veicolo
{
private int NumeroPosti;
private int NumeroMotori;
public Veicolo(int NP, int NM)
{
NumeroPosti = NP;
NumeroMotori = NM;
}
public int getNumeroPosti()
{ return NumeroPosti; }
public int getNumeroMotori()
{ return NumeroMotori; }
}
class VeicoloTerrestre extends Veicolo
{
private int NumeroRuote;
public VeicoloTerrestre(int NP, int NM, int NR)
{
super(NP, NM);
NumeroRuote = NR;
}
public int getNumeroRuote()
{ return NumeroRuote; }
}
class VeicoloMarino extends Veicolo
{
private long Stazza;
public VeicoloMarino(int NP, int NM, long S)
{
super(NP, NM);
Stazza = S;
}
public long getStazza()
{ return Stazza; }
}
----> main
public class Esempio3
{
public static void main(String args[])
{
VeicoloTerrestre MiaMacchina;
VeicoloMarino MiaNave;
MiaMacchina = new VeicoloTerrestre(5, 2, 4);
System.out.println("La mia macchina ha " +
MiaMacchina.getNumeroPosti() + " posti, " +
MiaMacchina.getNumeroMotori() + " motori e " +
MiaMacchina.getNumeroRuote() + " ruote");
MiaNave = new VeicoloMarino(10, 3, 10);
System.out.println("La mia nave ha " +
MiaNave.getNumeroPosti() + " posti, " +
MiaNave.getNumeroMotori() + " motori e " +
"una stazza di " + MiaNave.getStazza());
}
}