INSTRUCTOR : ING.
FORTUNATO VELIZ
[Link]
Programación Orientada a Objetos
Variables y Métodos
de Instancia y de Clase
ÍNDICE
• Objetivo
• Definiciones
• Implementación
• Acceso a las Variables y Métodos
• Inicializador Estático
• Proyecto Ejemplo
3
OBJETIVO
• Entender la diferencia entre variables y métodos de instancia y
de clase.
• Aplicar correctamente variables y métodos de instancia y de
clase.
public class Producto{
private static double igv = 0.18; // Variables de clase
private String cliente; // Variable de instancia
private double importe; // Variable de instancia
...
}
cliente
igv importe
cliente
importe
cliente
importe
Variable de la clase Producto Objetos de tipo Producto
4
DEFINICIONES
VARIABLES Y METODOS DE CLASE
– Se trata de variables y métodos que no requieren crear una instancia
(objeto) para ser invocados, basta con anteponer el nombre de la clase
para poder acceder a ellos.
• [Link]
• NombreClase.método( ... )
VARIABLES Y METODOS DE INSTANCIA
– Se trata de variables y métodos que se crean en el objeto y por lo tanto
para ser invocados se necesita una instancia de la clase, es decir por
un objeto.
• [Link]
• objeto.método( ... )
5
IMPLEMENTACIÓN
VARIABLES
[visibilidad] [static] tipo campo [=valor];
MÉTODOS
[visibilidad] [static] tipo nombreMétodo( … ) {
// Implementación
[return valor;]
}
La presencia de la palabra static determina que la declaración
es de la clase y no de la instancia.
6
DEFINICION
Una variable de clase es cualquier campo declarado con la
palabra static; esto le dice al compilador que hay solamente
una copia de esta variable en existencia,
independiente de cuantas veces la clase haya sido
instanciada.
ACCESO A LAS VARIABLES Y MÉTODOS
DE INSTANCIA DE CLASE
▪ Desde la misma clase ▪ Desde la misma clase
[Link] variable
this.método( ... ) método( ... )
▪ Desde fuera de la clase
▪ Desde fuera de la clase
[Link]
[Link]
objeto.método( ... )
NombreClase.método( ... )
8
INICIALIZADOR ESTÁTICO
class NombreClase {
...
...
static {
... Se utiliza para inicializar variables
de clase, similar a un constructor
...
que se utiliza para inicializar las
} variables de instancia.
...
...
}
9
PROYECTO EJEMPLO
El colegio "Ángeles del Cielo" esta solicitando un programa en
Java para que los alumnos de primaria verifiquen sus ejercicios
de matemáticas referidos a:
– Calculo de factorial
– Calculo del MCD y MCM de dos números
– La serie de Fibonacci
– Número primo
La programación de estos cálculos matemáticos deben estar
implementados como métodos de clase en una clase de nombre
MyMath.
1
Demos