4. Clases - Introducción

4.1. Clases
4.2. Objetos, miembros y referencias
4.3. Conceptos básicos. Resumen


4.1. Clases

Las clases son el mecanismo por el que se pueden crear nuevos Tipos en Java. Las clases son el punto central sobre el que giran la mayoría de los conceptos de la Orientación a Objetos. 

Una clase es una agrupación de datos y de código que actua sobre esos datos, a la que se le da un nombre. 

Una clase contiene:

La sintaxis general para la declaración de una clase es:

modificadores class nombre_clase {
       declaraciones_de_miembros ;
}

Por ejemplo:

class Punto {
     int x;
     int y;
}

Los modificadores son palabras clave que afectan al comportamiento de la clase. Los iremos viendo progresivamente en los sucesivos capítulos.

4.2. Objetos, miembros y referencias

Un objeto es una instancia (ejemplar) de una clase. La clase es la definición general y el objeto es la materialización concreta (en la memoria del ordenador) de una clase.

El fenómeno de crear objetos de una clase se llama instanciación.

Los objetos se manipulan con referencias. Una referencia es una variable que apunta a un objeto. Las referencias se declaran igual que las variables de Tipos primitivos (tipo nombre). Los objetos se crean (se instancian) con el operador de instanciación new

Ejemplo:

Punto p;
p = new Punto();

La primera línea del ejemplo declara una referencia (p) que es de Tipo Punto. La referencia no apunta a ningún sitio. En la segunda línea se crea un objeto de Tipo Punto y se hace que la referencia p apunte a él. Se puede hacer ambas operaciones en la misma expresión:

 Punto p = new Punto();

A los miembros de un objeto se accede a través de su referencia. La sintaxis es:

nombre_referencia.miembro

En el ejemplo, se puede poner:

p.x = 1;
p.y = 3;

Se puede visualizar gráficamente los datos primitivos, referencias y objetos de la siguiente forma:

Punto p = new Punto();
p.x = 1;
p.y = 3;

Es importante señalar que en el ejemplo, p no es el objeto. Es una referencia que apunta al objeto. 

Los métodos miembro se declaran dentro de la declaración de la clase, tal como se ha visto en el capítulo anterior. Por ejemplo:

class Circulo {
        Punto centro;   // dato miembro. Referencia a un objeto punto
        int radio;      // dato miembro. Valor primitivo
        float superficie() {                 // método miembro. 
                return 3.14 * radio * radio;
        }                                    // fin del método superficie
}                                            // fin de la clase Circulo

El acceso a métodos miembros es igual que el que ya se ha visto para datos miembro. En el ejemplo:

Circulo c = new Circulo();
c.centro.x = 2;
c.centro.y = 3;
c.radio = 5;
float s = c.superficie();

Es interesante observar en el ejemplo:

4.3. Conceptos básicos. Resumen


     

Ultima actualización - 18-Febrero-2001
Antonio Bel Puchol - abelp@arrakis.es