CLAESE Y OBJETOS
• La unidad fundamental de programación en Java es la
clase
• Un programa Java está formado por un conjunto de clases
• Una clase es una “plantilla” que describe un conjunto de
objetos con atributos y comportamiento similares
• Un programa Java en ejecución crea y manipula (mediante
llamadas a métodos) objetos concretos (ejemplares o
instancias)
• Cada objeto es un ejemplar de unaclase
• Cuando se invoca un método de un objeto, se mira en el
código de su clase las acciones a ejecutar
• Un objeto puede usar otros para realizar su trabajo
Java: Clases y Objetos
www.fdi.ucm.es/profesor/balta
Java
Clases y objetos
BFM
1
Java
Clases
Java
Clases y objetos
2
[Modificadores] class NombreClase [extends SuperClase] {
// definición de losatributos de la clase
tipo1 identificador1;
tipo2 identificador2;
……….…………….
// definición de los métodos de la clase
tipoDevuelto nombreMetodo1 (listaParametros) {
//instrucciones del método1
}
tipoDevuelto nombreMetodo2 (listaParametros) {
//instrucciones del método2
}
……….…………….
}
estado del objeto
• Métodos:
– Funciones
– Constructores
– Bloques de inicialización static
–Finalizador
BFM
Definición de una clase
• Una definición de clase comprende:
• Cabecera
• Campos o atributos:
– Variables
– Constantes
Clases y objetos
comportamiento
BFM
3
Java
Clases y objetos
BFM
4
Modificadores de clase
• Modificadores:
• public class NombreClase
Variables, objetos y referencias
• Una variable de un determinado tipo simple proporciona– Capacidad para almacenar un valor simple
– Un conjunto predifinido de operadores
// visible fuera del paquete
– Normalmente la clase se almacena en un fichero NombreClase.java
– En un fichero .java puede haber como mucho una clase public
• class C extends superclase
• Un objeto de una determinada clase proporciona
• Capacidad para almacenar diversos valores (atributos)
• Definesu propio conjunto de métodos para operar sobre las
instancias o ejemplares de esa clase
• Cuando se declara un objeto de una clase se crea una
referencia a una instancia de dicha clase
// la clase hereda de otra
– Sólo herencia simple (una sóla superclase)
– Si no aparece extends la clase definida hereda (es una subclase) de un
objeto general del sistema llamada Object
public classRectangulo{
int x;
int y;
int ancho;
int alto;
// faltan los métodos de Rectángulo
}
Java
Clases y objetos
Object
– Incialmente toma el valor null porque no existe objeto al que referirse
– No son punteros con los que se pueda trabajar directamente
Rectangulo
BFM
num
int num = 5;
Rectangulo rect;
5
Java
Clases y objetos
rect
BFM
Creación de instancias oejemplares
null
6
Acceso a los atributos de un objeto
• Operador new
• Crea una instancia o ejemplar de la clase indicada y devuelve
una referencia a dicho objeto
• Se reserva espacio de memoria para los datos del objeto
5
• Desde un objeto se puede acceder a los atributos o
miembros con la siguiente sintaxis
referenciaObjeto.atributo;
public class Rectangulo {
int x;
int y;int ancho;
int alto;
//faltan las funciones miembro
public static void main(String args[ ]) {
Rectangulo rect;
rect = new Rectangulo();
rect.x = 5;
rect.y = 7;
rect.ancho = 4;
rect.alto = 3;
System.out.println( "x = " + rect.x + ” y = " + rect.y );
System.out.println( "ancho = " + rect.ancho + ” alto = " + rect.alto ); } }
– Un ejemplar es una copia individual de la plantilla de laclase que tiene
su propio conjunto de datos
num 5
int num = 5;
// crea una referencia
rect
Rectangulo rect;
x
// reserva la memoria
rect = new Rectangulo();
y
otroRect
Rectangulo otroRect;
ancho
otroRect = rect;
// otroRect se refiere al mismo
alto
// rectangulo que rect
Java
Clases y objetos
BFM
7
Java
Clases y objetos
BFM
8
Declaración de métodos...
Regístrate para leer el documento completo.