Está en la página 1de 9

DIFERENCIA ENTRE

METODOS DE INSTANCIA Y
METODOS DE CLASE

Java Fundamentals

METODOS DE INSTANCIA

Cuando se declara un mtodo en una clase


sin utilizar la palabra reservada static, se
genera un mtodo de instancia.
Cada objeto creado a partir de la clase tendr
una propia copia del mtodo declarado en la
clase.
Cuando se llama a un mtodo del objeto
creado para modificar las variables, se
modificarn las variables del objeto mas no de
la clase.

MTODOS DE INSTANCIA

La llamada a los mtodos de instancia se


realiza de la siguiente forma:

objetoCreado.metodoDeInstancia
();

Ejemplo 1: Mtodo de Instancia


Pensemos en una clase Reloj que tiene
como atributos: ubicacin y hora.
Si se crean objetos a partir de la clase Reloj,
posiblemente un usuario configure el atributo
hora en relacin al lugar geogrfico donde
habita.
El atributo hora variar dependiendo de la
ubicacin del dueo del reloj. Ej:
Reloj1: ubicacin (Ecuador) hora (07:00)
Reloj2: ubicacin (Uruguay) hora (05:00)

METODOS ESTTICOS O DE
CLASE

Cuando se usa la palabra static para


declarar un mtodo, se obtiene un mtodo de
clase o esttico.
Se puede hacer una llamada a un mtodo de
clase sin instanciar ningn objeto.
Operan nicamente con las variables de
clase, no tienen acceso a las variables de
instancia de la clase.

METODOS ESTTICOS O DE
CLASE

La llamada a los mtodos de instancia se


realiza de la siguiente forma:

Clase.metodoDeClase();

Ejemplo 2: Mtodos de Clase

Si a la clase anterior, le aadimos una atributo


de clase marca, mediante un mtodo de
clase podremos modificar la marca de todos
los relojes creados a partir de la clase Reloj.

Reloj1: ubicacin (Ecuador) hora (07:00) marca


(Rolex)
Reloj2: ubicacin(Uruguay) hora (05:00) marca
(Rolex)

Ejemplo 2: Mtodos de Clase


Java tiene en su API, mtodos estticos como
raz cuadrada (sqrt) de la clase Math.

No es necesario instanciar un objeto de la


clase Math para utilizar el mtodo sqrt en
cualquier programa.

RESUMEN
METODOS DE CLASE O ESTTICOS

METODOS DE INSTANCIA

PARA UTILIZARLOS NO SE REQUIERE


CREAR UN OBJETO DE LA CLASE QUE
LOS CONTIENE. Ej:
Math.sqrt(36);

REQUIEREN CREAR UN OBJETO O


INSTANCIA DE LA CLASE QUE LOS
CONTIENEN PARA PODER
UTILIZARLOS. Ej:
Equipo ipad2=new Equipo();
ipad2.calcularConsumoEnergia(23,
0.08);

SE CARGAN EN MEMORIA EN TIEMPO


DE COMPILACIN.

SE CARGAN EN MEMORIA EN TIEMPO


DE EJECUCIN.

CONSUMEN GRAN PARTE DE LA RAM

NO CONSUMEN MEMORIA RAM

VAN PRECEDIDOS DE LA PALABRA


RESERVADA static. Ej:
public static int
nroTransacciones(){}

NO VAN PRECEDIDOS DE L
MODIFICADOR static. Ej:
public int nroTransacciones(){}

INCREMENTAN LA VELOCIDAD DE
EJECUCIN PERO SE PIERDE

SE GANA FLEXIBILIDAD, SE
APROVECHA LA MEMORIA Y SE

También podría gustarte