SlideShare una empresa de Scribd logo
1 de 19
UNIVERSIDAD TECNICA DE AMBATO
Facultad 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 que un miembro dato estático
 guarda el mismo valor en todos los objetos de dicha
 clase.
Un dato estático es una variable miembro que no se
 asocia a un objeto (instancia) de una clase, sino que
se 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.
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 a
través de una referencia a un objeto de la
clase.



                Por ejemplo:


          Punto p = new Punto();
           int x = p.numPuntos;
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 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.
 public class Alumno {
    double nota;
    static double notaCorte=6.0;
    public Alumno(double nota) {
      this.nota=nota;
    }
    boolean estaAdmitido(){
      return (nota>=notaCorte);
    }
}
 Creamos ahora un array de cuatro alumnos y
 asignamos a cada uno de ellos una nota.

alumnos={new Alumno(5.5), new

Alumno(6.3), new Alumno(7.2), new Alumno(5.0)};
 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);
 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);
  }
 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.
Para los métodos, la idea es la misma
  que para los datos: los métodos
estáticos se asocian a una clase, no a
            una instancia.
[modificadores
] Tipo_Valor_devuelto

nombre_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;
      numPuntos ++ ;
              }

static int cuantosPuntos() {
      return numPuntos;
               }
             }
En ocasiones es necesario escribir código para inicializar
los datos estáticos, quizá creando algún otro objeto de
alguna clase o realizando algún tipo de control. El
fragmento de código que realiza esta tarea se llama
inicializador estático. Es un bloque de sentencias que no
tiene 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 }
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;
               }
             }
GRACIAS

 POR SU

ATENCION

Más contenido relacionado

La actualidad más candente

Fundamentos de programacion
Fundamentos de programacionFundamentos de programacion
Fundamentos de programacionSneydert Jhenz
 
Tipos de Variables en Java
Tipos de Variables en JavaTipos de Variables en Java
Tipos de Variables en JavaAldemar Rosas
 
Programación 3: arrays (arreglos) y vectores
Programación 3: arrays (arreglos) y vectoresProgramación 3: arrays (arreglos) y vectores
Programación 3: arrays (arreglos) y vectoresAngel Vázquez Patiño
 
Manejo de memoria
Manejo de memoriaManejo de memoria
Manejo de memoriaIronAngel
 
Tema 5 arreglos y cadenas - lsia por gio
Tema 5   arreglos y cadenas - lsia por gioTema 5   arreglos y cadenas - lsia por gio
Tema 5 arreglos y cadenas - lsia por gioRobert Wolf
 
Arreglos Unidimensionales - Java - NetBeans
Arreglos Unidimensionales - Java - NetBeansArreglos Unidimensionales - Java - NetBeans
Arreglos Unidimensionales - Java - NetBeansDaniel Gómez
 
Anderson martinez arreglos
Anderson martinez arreglosAnderson martinez arreglos
Anderson martinez arreglosadrmrtinzm
 
Vectores, matrices y estructuras
Vectores, matrices y estructurasVectores, matrices y estructuras
Vectores, matrices y estructurasrichmadriz
 
Arreglos Unidimensionales
Arreglos UnidimensionalesArreglos Unidimensionales
Arreglos UnidimensionalesCindy
 
Tipos de variables que Java maneja
Tipos de variables que Java manejaTipos de variables que Java maneja
Tipos de variables que Java manejaLaura Robles
 
Vectores, array y sus métodos
Vectores, array y sus métodosVectores, array y sus métodos
Vectores, array y sus métodosOrlando Verdugo
 
6 A Arrays
6 A Arrays6 A Arrays
6 A Arraysjcpp67
 

La actualidad más candente (18)

Vectores y matrices
Vectores y matricesVectores y matrices
Vectores y matrices
 
Fundamentos de programacion
Fundamentos de programacionFundamentos de programacion
Fundamentos de programacion
 
Variables en java
Variables en javaVariables en java
Variables en java
 
Tipos de Variables en Java
Tipos de Variables en JavaTipos de Variables en Java
Tipos de Variables en Java
 
Programación 3: arrays (arreglos) y vectores
Programación 3: arrays (arreglos) y vectoresProgramación 3: arrays (arreglos) y vectores
Programación 3: arrays (arreglos) y vectores
 
Manejo de memoria
Manejo de memoriaManejo de memoria
Manejo de memoria
 
Tema 5 arreglos y cadenas - lsia por gio
Tema 5   arreglos y cadenas - lsia por gioTema 5   arreglos y cadenas - lsia por gio
Tema 5 arreglos y cadenas - lsia por gio
 
Arreglos Unidimensionales - Java - NetBeans
Arreglos Unidimensionales - Java - NetBeansArreglos Unidimensionales - Java - NetBeans
Arreglos Unidimensionales - Java - NetBeans
 
Anderson martinez arreglos
Anderson martinez arreglosAnderson martinez arreglos
Anderson martinez arreglos
 
Vectores, matrices y estructuras
Vectores, matrices y estructurasVectores, matrices y estructuras
Vectores, matrices y estructuras
 
Ape unidad4
Ape unidad4Ape unidad4
Ape unidad4
 
Arreglos Unidimensionales
Arreglos UnidimensionalesArreglos Unidimensionales
Arreglos Unidimensionales
 
Tipos de variables que Java maneja
Tipos de variables que Java manejaTipos de variables que Java maneja
Tipos de variables que Java maneja
 
Tipos de datos 1
Tipos de datos 1Tipos de datos 1
Tipos de datos 1
 
Clase IX
Clase IXClase IX
Clase IX
 
Vectores, array y sus métodos
Vectores, array y sus métodosVectores, array y sus métodos
Vectores, array y sus métodos
 
6 A Arrays
6 A Arrays6 A Arrays
6 A Arrays
 
Leccion 5 Java
Leccion 5 JavaLeccion 5 Java
Leccion 5 Java
 

Destacado

Fases para lanzar una empresa a Redes Sociales
Fases para lanzar una empresa a Redes SocialesFases para lanzar una empresa a Redes Sociales
Fases para lanzar una empresa a Redes SocialesXavi Soro Artola
 
Maria vasquez presentación
Maria vasquez presentaciónMaria vasquez presentación
Maria vasquez presentaciónmariavasquez22
 
Padres con hijos con tdah
Padres con hijos con tdahPadres con hijos con tdah
Padres con hijos con tdahMarta Montoro
 
Guia desarrolloinfantil 0-6
Guia desarrolloinfantil 0-6Guia desarrolloinfantil 0-6
Guia desarrolloinfantil 0-6Marta Montoro
 
Ashoka
AshokaAshoka
AshokaCein
 
El Niño Nervioso
El Niño NerviosoEl Niño Nervioso
El Niño NerviosoTechi Ramos
 
Corrientes Libertadoras
Corrientes LibertadorasCorrientes Libertadoras
Corrientes LibertadorasRonald
 
Hombre y ciudad
Hombre y ciudadHombre y ciudad
Hombre y ciudadJenPul
 
Crecimiento de la ciudad
Crecimiento de la ciudadCrecimiento de la ciudad
Crecimiento de la ciudadJenPul
 
El Extraterrestre
El ExtraterrestreEl Extraterrestre
El ExtraterrestreTechi Ramos
 
Google como ventana de la reputacion online
Google como ventana de la reputacion onlineGoogle como ventana de la reputacion online
Google como ventana de la reputacion onlineCein
 

Destacado (20)

Fases para lanzar una empresa a Redes Sociales
Fases para lanzar una empresa a Redes SocialesFases para lanzar una empresa a Redes Sociales
Fases para lanzar una empresa a Redes Sociales
 
Maria vasquez presentación
Maria vasquez presentaciónMaria vasquez presentación
Maria vasquez presentación
 
Padres con hijos con tdah
Padres con hijos con tdahPadres con hijos con tdah
Padres con hijos con tdah
 
Modelo gavilán
Modelo gavilánModelo gavilán
Modelo gavilán
 
Empleo tea
Empleo teaEmpleo tea
Empleo tea
 
Guia desarrolloinfantil 0-6
Guia desarrolloinfantil 0-6Guia desarrolloinfantil 0-6
Guia desarrolloinfantil 0-6
 
Presentación MRC
Presentación MRCPresentación MRC
Presentación MRC
 
Ashoka
AshokaAshoka
Ashoka
 
El Niño Nervioso
El Niño NerviosoEl Niño Nervioso
El Niño Nervioso
 
Presentación1 janeth
Presentación1 janethPresentación1 janeth
Presentación1 janeth
 
Deficit visual
Deficit visualDeficit visual
Deficit visual
 
Corrientes Libertadoras
Corrientes LibertadorasCorrientes Libertadoras
Corrientes Libertadoras
 
Buscadores
BuscadoresBuscadores
Buscadores
 
Hombre y ciudad
Hombre y ciudadHombre y ciudad
Hombre y ciudad
 
Tutorial
TutorialTutorial
Tutorial
 
Comenzar
ComenzarComenzar
Comenzar
 
Crecimiento de la ciudad
Crecimiento de la ciudadCrecimiento de la ciudad
Crecimiento de la ciudad
 
Comunicado alianza mundial carrefour
Comunicado alianza mundial carrefourComunicado alianza mundial carrefour
Comunicado alianza mundial carrefour
 
El Extraterrestre
El ExtraterrestreEl Extraterrestre
El Extraterrestre
 
Google como ventana de la reputacion online
Google como ventana de la reputacion onlineGoogle como ventana de la reputacion online
Google como ventana de la reputacion online
 

Similar a Static alexander

Similar a Static alexander (20)

Miembros estáticos
Miembros estáticosMiembros estáticos
Miembros estáticos
 
Sesion 07 nivel_acceso_miembros_clases
Sesion 07 nivel_acceso_miembros_clasesSesion 07 nivel_acceso_miembros_clases
Sesion 07 nivel_acceso_miembros_clases
 
2.android java
2.android   java2.android   java
2.android java
 
Clase3 asignaciones
Clase3 asignacionesClase3 asignaciones
Clase3 asignaciones
 
Tema 4 clases_y_objetos
Tema 4 clases_y_objetosTema 4 clases_y_objetos
Tema 4 clases_y_objetos
 
4 manejo de_metodos
4 manejo de_metodos4 manejo de_metodos
4 manejo de_metodos
 
Diseño de la logica
Diseño de la logicaDiseño de la logica
Diseño de la logica
 
Taller 1 6
Taller 1 6Taller 1 6
Taller 1 6
 
Taller 1 6
Taller 1 6Taller 1 6
Taller 1 6
 
Clases en Java y todo lo relacionado
Clases en Java y todo lo relacionadoClases en Java y todo lo relacionado
Clases en Java y todo lo relacionado
 
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
 
Semana9b Vbr
Semana9b VbrSemana9b Vbr
Semana9b Vbr
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 
Unidad 3 CLASES, OBJETOS E INTSANCIAS
Unidad 3 CLASES, OBJETOS E INTSANCIASUnidad 3 CLASES, OBJETOS E INTSANCIAS
Unidad 3 CLASES, OBJETOS E INTSANCIAS
 
Unidad 2 clases y objetos
Unidad 2 clases y objetosUnidad 2 clases y objetos
Unidad 2 clases y objetos
 
Tema 5 arreglos y cadenas por gio
Tema 5   arreglos y cadenas por gioTema 5   arreglos y cadenas por gio
Tema 5 arreglos y cadenas por gio
 
Tutorial 3
Tutorial 3Tutorial 3
Tutorial 3
 
Taller 1 5
Taller 1 5Taller 1 5
Taller 1 5
 
Taller 1 5
Taller 1 5Taller 1 5
Taller 1 5
 
8.Clases y objetos Java
8.Clases y objetos Java8.Clases y objetos Java
8.Clases y objetos Java
 

Static alexander

  • 1. UNIVERSIDAD TECNICA DE AMBATO Facultad de Ingeniería en Sistemas Electrónica e Industrial
  • 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. Un dato estático es una variable miembro que no se asocia a un objeto (instancia) de una clase, sino que se 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. class Punto { int x , y ; static int numPuntos = 0; Punto ( int a , int b ) { x = a ; y = b; numPuntos ++ ; } }
  • 5. es posible acceder a las variables estáticas a través de una referencia a un objeto de la clase. Por ejemplo: Punto p = new Punto(); int x = p.numPuntos;
  • 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.  public class Alumno { double nota; static double notaCorte=6.0; public Alumno(double nota) { this.nota=nota; } boolean estaAdmitido(){ return (nota>=notaCorte); } }
  • 9.  Creamos ahora un array de cuatro alumnos y asignamos a cada uno de ellos una nota. alumnos={new Alumno(5.5), new Alumno(6.3), new Alumno(7.2), new Alumno(5.0)};
  • 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.  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.  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.
  • 14. Para los métodos, la idea es la misma que para los datos: los métodos estáticos se asocian a una clase, no a una instancia.
  • 15. [modificadores ] Tipo_Valor_devuelto nombre_método ( lista argumentos ){ bloque_de_codigo; }
  • 16. class Punto { int x , y ; static int numPuntos = 0; Punto ( int a , int b ) { x = a ; y = b; numPuntos ++ ; } static int cuantosPuntos() { return numPuntos; } }
  • 17. En ocasiones es necesario escribir código para inicializar los datos estáticos, quizá creando algún otro objeto de alguna clase o realizando algún tipo de control. El fragmento de código que realiza esta tarea se llama inicializador estático. Es un bloque de sentencias que no tiene 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 }
  • 18. 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; } }