utrecht
30-07-2003, 22:46
Ebbene sì, sono alle prime sperimentazioni con java.....
Un esercizio che ha scopo puramente didattico per apprendere il duplice utilizzo di 'this'.
Se i metodi "ProvaDiThis" hanno come tipo di ritorno void, ottengo il seguente errore: <call to this must be first statement in costructor... >
Non riesco a comprenderne il perchè.
Mi potreste aiutare??
Grazie
Ecco il codice:
---
public class ProvaDiThis
{
public int unNumero=0;
public int unAltroNumero=0;
ProvaDiThis(int nome)
{
unNumero=nome;
System.out.println("var di istanza inizializzata normalmente: unNumero="+unNumero);
}
ProvaDiThis(int nome, int unAltroNumero)
{
this(nome);
this.unAltroNumero=unAltroNumero;
}
ProvaDiThis()
{
this(11,114);
System.out.println(" bla... bla...\n");
}
void FinalMeth() {
System.out.println("unNumero vale: "+unNumero+"\nunAltroNumero vale: "+unAltroNumero);
}
public static void main (String args[])
{
ProvaDiThis obj =new ProvaDiThis();
obj.FinalMeth();
}
}
---
Un esercizio che ha scopo puramente didattico per apprendere il duplice utilizzo di 'this'.
Se i metodi "ProvaDiThis" hanno come tipo di ritorno void, ottengo il seguente errore: <call to this must be first statement in costructor... >
Non riesco a comprenderne il perchè.
Mi potreste aiutare??
Grazie
Ecco il codice:
---
public class ProvaDiThis
{
public int unNumero=0;
public int unAltroNumero=0;
ProvaDiThis(int nome)
{
unNumero=nome;
System.out.println("var di istanza inizializzata normalmente: unNumero="+unNumero);
}
ProvaDiThis(int nome, int unAltroNumero)
{
this(nome);
this.unAltroNumero=unAltroNumero;
}
ProvaDiThis()
{
this(11,114);
System.out.println(" bla... bla...\n");
}
void FinalMeth() {
System.out.println("unNumero vale: "+unNumero+"\nunAltroNumero vale: "+unAltroNumero);
}
public static void main (String args[])
{
ProvaDiThis obj =new ProvaDiThis();
obj.FinalMeth();
}
}
---