Implementacion de clase

Solo disponible en BuenasTareas
  • Páginas : 19 (4736 palabras )
  • Descarga(s) : 0
  • Publicado : 24 de octubre de 2010
Leer documento completo
Vista previa del texto
5. IMPLEMENTACION DE LA CLASE

Ahora que ya sabemos como crear, utilizar y destruir objetos, es hora de aprender cómo escribir clases de las que crear esos objetos.
Una clase es un proyecto o prototipo que se puede utilizar para crear muchos objetos. La implementación de una clase comprende dos componentes: la declaración y el cuerpo de la clase.
DeclaraciónDeLaClase {
CuerpoDeLaClase
}[pic] La Declaración de la Clase
Como mínimo, la declaración de una clase debe contener la palabra clave class y el nombre de la clase que está definiendo. Así la declaración más sencilla de una clase se parecería a esto.
class NombredeClase {
. . .
}
Por ejemplo, esta clase declara una nueva clase llamada NumeroImaginario.
class NumeroImaginario {
. . .
}
Los nombres de lasclases deben ser un identificador legal de Java y, por convención, deben empezar por una letra mayúscula. Muchas veces, todo lo que se necesitará será una declaración mínima. Sin embargo, la declaración de una clase puede decir más cosas sobre la clase. Más especificamente, dentro de la declaración de la clase se puede.
• declarar cual es la superclase de la clase.
• listar los interfacesimplementados por la clase
• declarar si la clase es pública, abstracta o final
[pic] Declarar la Superclase de la Clase
En Java, todas las clases tienen una superclase. Si no se especifica una superclase para una clase, se asume que es la clase Object (declarada en java.lang). Entonces la superclase de NumeroImaginario es Object porque la declaración no explicitó ninguna otra clase. Paraobtener más información sobre la clase Object, puede ver La clase Object.
Para especificar explícitamente la superclase de una clase, se debe poner la palabra clave extends más el nombre de la superclase entre el nombre de la clase que se ha creado y la llave abierta que abre el cuerpo de la clase, así.
class NombredeClase extends NombredeSuperClase {
. . .
}
Por ejemplo, supon que quieresque la superclase de NumeroImaginario sea la clase Number en vez de la clase Object. Se podría escribir esto.
class NumeroImaginario extends Number {
. . .
}
Esto declara explícitamente que la clase Number es la superclase de NumeroImaginario. (La clase Number es parte del paquete java.lang y es la base para los enteros, los números en coma flotante y otros números).
Declarar que Numberes la superclase de NumeroImaginario declara implícitamente que NumeroImaginario es una subclase de Number. Una subclase hereda las variables y los métodos de su superclase.
Crear una subclase puede ser tan sencillo como incluir la clausula extends en su declaración de clase. Sin embargo, se tendrán que hacer otras provisiones en su código cuando se crea una subclase, como sobreescribir métodos.Para obtener más información sobre la creación de subclases, puede ver Subclases, Superclases, y Herencia.
[pic] Listar los Interfases Implementados por la Clase
Cuando se declara una clase, se puede especificar que interfase, si lo hay, está implementado por la clase. Pero, ¿Qué es una interfase? Una interfase declara un conjunto de métodos y constantes sin especificar su implementación paraningún método. Cuando una clase exige la implementación de un interfase, debe proporcionar la implementación para todos los métodos declarados en el interfase.
Para declarar que una clase implementa uno o más interfaces, se debe utilizar la palabra clave implements seguida por una lista de los interfaces implementados por la clase delimitados por comas. Por ejemplo, imagina un interfase llamadoAritmético que define los métodos llamados suma (), resta (), etc... La clase Numero Imaginario puede declarar que implementa el interfase Aritmético de esta forma.
class NumeroImaginario extends Number implements Aritmético {
. . .
}
se debe garantizar que proporciona la implementación para los métodos suma(), resta() y demás métodos declarados en el interfase Aritmético. Si en Numero...
tracking img