PDA

View Full Version : [java] Ridefinire un metodo in una nuova classe


federico100mt
04-03-2009, 09:03
ciao a tutti,

sto sviluppando un un'applicazione plugin legata ad un kernel di un programma di elaborazioni di segnali. Questo plugin è praticamente un estensione, un'aggiunta di più funzionalità, praticamente quando si lancia l'applicazione dal kernel l'utente non vede queste opzioni. (Fltri particolari e formule custom)

Mi piacerebbe quindi, in questo caso, estendere una classe del kernel e ridefinire dei metodi, aggiungerci quindi delle funzionalità. Secondo voi è meglio riscriverli tutti? o ci sono delle strategi che ti danno la possibilità di "fare delle aggiunte"? Non riesco a immagginarmi come però, se io ridefinisco un metodo come mantengo la gerachia delle istruzioni?

:rolleyes: grazie mille....

banryu79
04-03-2009, 15:39
Nella classe che eredita, quando ridefinisci un metodo come prima istruzione richiami il metodo della classe padre, con super:

class Padre
{
int numero;
StringBuilder nome;

public Padre(int num, String s)
{
numero = num;
nome = new StringBuilder(s);
}

public void changeData(int num, String s)
{
numero += num;
nome.append(s);
}
}

class Figlio extends Padre
{
public Figlio(int num, String s)
{
// chiama il costruttore di class Padre
super(num, s);
}

public void changeData(int num, String s)
{
// chiama il metodo changeData di class Padre
super.changeData(num, s);

// nuove funzionalita'
numero += (int) num/2;
nome.append("[FIGLIO]");
}
}