Ma infatti non è che deve per forza essere static. Dipende dal senso e uso che ne intendi fare!
Un membro static ("di classe") è associato alla classe ed è sostanzialmente "unico". Un membro non static ("di istanza") è associato distintamente a ciascun oggetto di quella classe.
Se quel x è statico, il "conteggio" con quel incremento è unico, "globale". Se x è non static, è associato a ciascun oggetto di tipo B. Un oggetto B potrebbe avere x=5, un altro x=10 ecc...
E tra l'altro, già che ci sono, quel i++ nel m() semplicemente NON serve a nulla. Incrementare il parametro NON cambia ciò che ha il chiamante. Incrementare il parametro i in sostanza non cambia quella variabile y nel main.


Rispondi quotando
