UNIVERSIDAD TECNICA DE AMBATOFacultad de Ingeniería en Sistemas Electrónica e Industrial
 Las variables de clase o miembros estáticos son aquellos a los que se antepone el modificador static. Vamos a comprobar ...
Un dato estático es una variable miembro que no se asocia a un objeto (instancia) de una clase, sino quese asocia a la cla...
class Punto {         int x , y ;static int numPuntos = 0;  Punto ( int a , int b ) {       x = a ; y = b;     numPuntos +...
es posible acceder a las variables estáticas através de una referencia a un objeto de laclase.                Por ejemplo:...
modificador tipo variable nombre;
 Sea una clase denominada Alumno con dos miembros dato, la nota de selectividad, y un miembro estático denominado nota de...
 public class Alumno {    double nota;    static double notaCorte=6.0;    public Alumno(double nota) {      this.nota=not...
 Creamos ahora un array de cuatro alumnos y asignamos a cada uno de ellos una nota.alumnos={new Alumno(5.5), newAlumno(6....
 Contamos el número de alumnos que están admitidos  int numAdmitidos=0;  for(int i=0; i<alumnos.length; i++){  if (alumno...
 Accedemos al miembro dato notaCorte desde un objeto de la clase Alumno, para cambiarla a 7.0  alumnos[1].notaCorte=7.0;...
 El miembro dato notaCorte tiene el modificador static y  por tanto está ligado a la clase más que a cada uno de los  obj...
Para los métodos, la idea es la misma  que para los datos: los métodosestáticos se asocian a una clase, no a            un...
[modificadores] Tipo_Valor_devueltonombre_método ( lista argumentos){     bloque_de_codigo;}
class Punto {         int x , y ;static int numPuntos = 0;   Punto ( int a , int b ) {        x = a ; y = b;      numPunto...
En ocasiones es necesario escribir código para inicializarlos datos estáticos, quizá creando algún otro objeto dealguna cl...
class Punto {         int x , y ;  static int numPuntos;         static {       numPuntos = 0;            }   Punto ( int ...
GRACIAS POR SUATENCION
Static Alexander_Eivar
Próxima SlideShare
Cargando en…5
×

Static Alexander_Eivar

339 visualizaciones

Publicado el

0 comentarios
0 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Sin descargas
Visualizaciones
Visualizaciones totales
339
En SlideShare
0
De insertados
0
Número de insertados
2
Acciones
Compartido
0
Descargas
1
Comentarios
0
Recomendaciones
0
Insertados 0
No insertados

No hay notas en la diapositiva.

Static Alexander_Eivar

  1. 1. UNIVERSIDAD TECNICA DE AMBATOFacultad de Ingeniería en Sistemas Electrónica e Industrial
  2. 2.  Las variables de clase o miembros estáticos son aquellos a los que se antepone el modificador static. Vamos a comprobar que un miembro dato estático guarda el mismo valor en todos los objetos de dicha clase.
  3. 3. Un dato estático es una variable miembro que no se asocia a un objeto (instancia) de una clase, sino quese asocia a la clase misma; no hay una copia del dato para cada objeto sino una sola copia que es compartida por todos los objetos de la clase.
  4. 4. class Punto { int x , y ;static int numPuntos = 0; Punto ( int a , int b ) { x = a ; y = b; numPuntos ++ ; } }
  5. 5. es posible acceder a las variables estáticas através de una referencia a un objeto de laclase. Por ejemplo: Punto p = new Punto(); int x = p.numPuntos;
  6. 6. modificador tipo variable nombre;
  7. 7.  Sea una clase denominada Alumno con dos miembros dato, la nota de selectividad, y un miembro estático denominado nota de corte. La nota es un atributo que tiene un valor distinto para cada uno de los alumnos u objetos de la clase Alumno, mientras que la nota de corte es un atributo que tiene el mismo valor para a un conjunto de alumnos.
  8. 8.  public class Alumno { double nota; static double notaCorte=6.0; public Alumno(double nota) { this.nota=nota; } boolean estaAdmitido(){ return (nota>=notaCorte); }}
  9. 9.  Creamos ahora un array de cuatro alumnos y asignamos a cada uno de ellos una nota.alumnos={new Alumno(5.5), newAlumno(6.3), new Alumno(7.2), new Alumno(5.0)};
  10. 10.  Contamos el número de alumnos que están admitidos int numAdmitidos=0; for(int i=0; i<alumnos.length; i++){ if (alumnos[i].estaAdmitido()){ numAdmitidos++; } } System.out.println("admitidos "+numAdmitidos);
  11. 11.  Accedemos al miembro dato notaCorte desde un objeto de la clase Alumno, para cambiarla a 7.0 alumnos[1].notaCorte=7.0; Comprobamos que todos los objetos de la clase Alumno tienen dicho miembro dato estático notaCorte cambiado a 7.0 for(int i=0; i<alumnos.length; i++){ System.out.println("nota de corte "+alumnos[i].notaCorte); }
  12. 12.  El miembro dato notaCorte tiene el modificador static y por tanto está ligado a la clase más que a cada uno de los objetos de dicha clase Si ponemos Alumno.notaCorte=6.5; for(int i=0; i<alumnos.length; i++){ System.out.println("nota de corte "+alumnos[i].notaCorte); } Veremos que todos los objetos de la clase Alumno habrán cambiado el valor del miembro dato estático notaCorte a 6.5.
  13. 13. Para los métodos, la idea es la misma que para los datos: los métodosestáticos se asocian a una clase, no a una instancia.
  14. 14. [modificadores] Tipo_Valor_devueltonombre_método ( lista argumentos){ bloque_de_codigo;}
  15. 15. class Punto { int x , y ;static int numPuntos = 0; Punto ( int a , int b ) { x = a ; y = b; numPuntos ++ ; }static int cuantosPuntos() { return numPuntos; } }
  16. 16. En ocasiones es necesario escribir código para inicializarlos datos estáticos, quizá creando algún otro objeto dealguna clase o realizando algún tipo de control. Elfragmento de código que realiza esta tarea se llamainicializador estático. Es un bloque de sentencias que notiene nombre, ni recibe argumentos, ni devuelve valor.Simplemente se declara con el modificador static .La forma de declarar el inicializador estático es:static { bloque_codigo }
  17. 17. class Punto { int x , y ; static int numPuntos; static { numPuntos = 0; } Punto ( int a , int b ) { x = a ; y = b; numPuntos ++ ; }static int cuantosPuntos() { return numPuntos; } }
  18. 18. GRACIAS POR SUATENCION

×