Ciao , sto studiando java per un esame e ho un dubbio per quanto riguarda l'ereditarietà quando si tratta di metodi e attributi statici.
class Derivata extends Statica {
static int i;
}
class Statica {
static int i;
Statica () {
i++;
}
}
public static void main (String[] args) {
Statica a = new Statica();
Derivata b = new Derivata();
System.out.println(a.i + " " + b.i);
// stampa 2 0
}
Non capisco perché stampi 2 0 , ero convinta stampasse 1 0 .
Qualcuno può spiegarmi il perché ?
Grazie