E' un po' filosofia ed un po' logica.
Ad esempio:
supponi di voler tenere traccia del numero di istanze di una classe: e' abbastanza ovvio che conviene utilizzare un membro statico per quella classe.
Se non hai accesso alla classe, allora potrebbe essere sufficiente una variabile statica.
Il principio da seguire e' sempre lo stesso: information hiding.
Cioe' l'informazione va messa il piu' vicino possibile a dove serve e deve essere visbile solo a chi serve.
Una variabile globale e' visibile da chiunque, e quindi chiunque la potrebbe utilizzare.
Inoltre, essendo globale, potrebbe non essere evidente a chi effettivamente serva.