Clases 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 una clase •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
1 Java Clases y objetos BFM 2
Java: Clases y Objetos
www.fdi.ucm.es/profesor/balta
Java
Clases y objetos
BFM
Clases
• Una definición de clase comprende: • Cabecera • Campos o atributos:
– Variables – Constantes
Definición deuna clase
[Modificadores] class NombreClase [extends SuperClase] { // definición de los atributos 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 objetocomportamiento
• Métodos:
– Funciones – Constructores – Bloques de inicialización static – Finalizador
Java
Clases y objetos
BFM
3
Java
Clases y objetos
BFM
4
Modificadores de clase
• Modificadores: • public class NombreClase • class C extends superclase // visible fuera del paquete // la clase hereda de otra
– Normalmente la clase se almacena en un ficheroNombreClase.java – En un fichero .java puede haber como mucho una clase public – 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 class Rectangulo{ int x; int y; int ancho; int alto; // faltan los métodos de Rectángulo }
Java Clases y objetos BFM
Variables, objetos y referencias
• Unavariable de un determinado tipo simple proporciona
– Capacidad para almacenar un valor simple – Un conjunto predifinido de operadores
Object
• Un objeto de una determinada clase proporciona • Capacidad para almacenar diversos valores (atributos) • Define su propio conjunto de métodos para operar sobre las instancias o ejemplares de esa clase • Cuando se declara un objeto de una clase se creauna referencia a una instancia de dicha clase
– Incialmente toma el valor null porque no existe objeto al que referirse – No son punteros con los que se pueda trabajar directamente
Rectangulo
int num = 5; Rectangulo rect;
5 Java Clases y objetos BFM
num rect
5 null
6
Creación de instancias o ejemplares
• Operador new • Crea una instancia o ejemplar de la clase indicada y devuelveuna referencia a dicho objeto • Se reserva espacio de memoria para los datos del objeto
– Un ejemplar es una copia individual de la plantilla de la clase 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
Acceso a los atributos de un objeto
• 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 ); } }
Clases y objetos BFM 8
Declaración de métodos
• Funciones declaradas en la clase y que determinan su comportamiento • Sintaxis tipoDevuelto nombreMetodo (listaParametros) {
//instrucciones del método }
// calcula...
Regístrate para leer el documento completo.