Hola Irvin Elisandro !!!
Descargar este proyecto de ejemplo:
http://14421949563997827471-a-g.googlegroups.com/web/EjemploStatic.zip?gda=u-GQKkcAAAC3p_MvqFe6KKw4fx5D66iBXmRgRgkLGA7NgY2BxvVvGUlmUZFUhZR4q5D7tzjsu21V6u9SiETdg0Q2ffAyHU-dK5n5qwSAP_CgnHtIX9fyqA&gsc=PpJk8CMAAAAkQDUxZvD0UNDGvWiyrR06q1KZMKPaxLNnYcxqcsIs4a0IoyLhPG2x5smOr2otMGI
Estudia la clase Bicicleta y luego ve la prueba en el Main.
Explicación
===========
Cuando se crean varios objetos de una misma clase, cada uno de estos
tiene sus propias variables de instancia. En el caso de la clase
"Bicicleta", las variables de instancia son el id, cadencia, ruedas y
la velocidad. Cada objeto bicicleta tiene sus propios valores para
estas variables, los que están almacenados en diferentes posiciones de
memoria.
A veces, es necesario tener variables que son comunes a todos los
objetos. Esto se logra con el modificador "static". Los campos que
tienen el modificador "static" en su declaración se llaman "campos
estáticos o variables de clase". Se llaman así porque se asocian con
la clase, más que con algún objeto. Cada instancia de clase comparte
esta variable, la que está ubicada en una sola ubicación de memoria.
Cualquier objeto puede cambiar el valor de una variable de clase.
Por ejemplo, supongamos que queremos crear un número determinado de
objetos "Bicicleta" y asignar a cada una un número de serie, empezando
desde el 1 para el primer objeto. El número "id" es único a cada
objeto y por lo tanto una variable de instancia. Al mismo tiempo, se
necesita un campo para realizar un conteo de cuantos objetos
"Bicicleta" se han creado para saber que "id" asignarle al siguiente
objeto que creemos. Este campo no está vinculado a ningún objeto que
instanciemos, sino a la clase como un todo. Para ello, necesitamos una
variable de clase: "numeroDeBicicletas".
Bye