Aplicando la POO
Herencia
permite que se puedan definir nuevas clases basadas de unas ya existentes a fin de reutilizar el código, generando así una jerarquía de clases dentro de una aplicación. Si una clase deriva de otra, esta hereda sus atributos y métodos y puede añadir nuevos atributos, métodos o redefinir los heredados.
Encapsulamiento
sirve para separar el interfaz contractual de una abstracción y su implantación.
niveles de acceso
Privado (Private)
declarar miembros accesibles sólo para la propia clase.
Protegido (Protected)
no son de acceso público, solamente son accesibles dentro de su clase y por subclases.
Público (Public)
Todos pueden acceder a los datos o métodos de una clase que se definen con este nivel
Abstracción
seleccionar datos de un conjunto más grande para mostrar solo los detalles relevantes del objeto. Ayuda a reducir la complejidad y el esfuerzo de programación.
Sirve para proporcionar una super clase apropiada a partir de la cuál heredan otras
clases.
No se pueden instanciar objetos de una clase abstracta
Se utilizan sólo como super clases o clase Padre, debe tener al menos un hijo.
Argumentos y paso de parámetros
Sobrecarga de métodos
diferir en sus tipos de
devolución. Cuando se llama a un método sobrecargado, se ejecuta la versión del método cuyos parámetros coinciden con los argumentos.
Declaración de parámetros
se declaran en la cabecera de la declaración de los métodos. Al declararse el parámetro, se indica el tipo de dato y el identificador correspondiente
son una forma de intercambiar información con el método.
Ámbito y tiempo de vida de variables
Tipos de ámbito
Estático
pertenecen a la propia clase donde han sido declaradas, y dependiendo del modificador de visibilidad usado podrían ser sólo accedidas desde la propia clase en la que han sido declaradas
Global
pertenecen a cada instancia
concreta de la clase donde han sido declaradas, y dependiendo del modificador de visibilidad
usado
Local
sólo pueden ser accedidas desde el bloque de código en el que han sido declaradas
El ámbito de una variable define su alcance de uso, o lo que es lo mismo, en que secciones
de código una variable estará disponible. Fuera de este ámbito, una variable no podrá ser
accedida
Introducción a los métodos
Los métodos son la forma de comunicarse con la clase para pedirle que haga cosas
Los métodos se ejecutan o activan cuando el objeto recibe un mensaje, enviado por un objeto o clase externo
se puede definir más de un método constructor, que normal- mente se diferencian entre sí
se destaca el método constructor, que no es más que el método que se
ejecuta cuando el objeto es creado.
tiene un nombre, cero o más parámetros que recibe o devuelve y un algoritmo con el desarrollo del mismo.
herramienta indispensable para programar. Son las operaciones (acciones o funciones) que se aplican sobre los objetos y que permiten crearlos, cambiar su estado o consultar el valor de sus atributos.
Excepciones
Manejo de Excepciones
RunTimeException
Excepciones No verificadas
IOException
Excepciones verificadas
soporte para manejar situaciones
anómalas que pueden ocurrir
durante la ejecución de un programa. Son algunos errores que pueden surgir al ejecutar el programa.
Definición, creación y reutilización de paquetes / librerías
Importación de paquetes
La cláusula import puede utilizarse para importar un elemento concreto de un paquete
Creación de paquetes
se genera incluyendo la palabra clave package al inicio de los módulos de código en los que se definen las clases que formarán parte del mismo.
Los paquetes son el mecanismo que usa Java para facilitar el modularidad del código. Un
paquete puede contener una o más definiciones de interfaces y clases, distribuyéndose
habitualmente como un archivo.
Clases predefinidas
Clase Math
contiene constantes y métodos de uso común en matemáticas. Todas las operaciones que se llevan a cabo en dicha clase se realizan con tipo double.
Clase String
se usa para manejar cadenas de caracteres de cualquier longitud finita. Es una clase especial.
Constructor
Si se declara alguno es obligatorio declarar también el constructor por defecto.
Si no se declara ninguno se usa el constructor por defecto.
Pueden existir varios constructores con distintos parámetros.
Tiene el mismo nombre que la clase.
Método especial que indica lo que se hace cuando se crea un objeto.
Especificadores de acceso a datos
public
protected
default
private
Clases
Declaración
Estructura
class [nombre de la clase] {
[atributos o variables de la clase]
[métodos o funciones de la clase]
[main]
}
Una clase es un molde del que luego se pueden crear múltiples objetos, con similares características.
Los nombres o identificadores de las clases deben colocarse en singular
se relacionan entre sí mediante una jerarquía.
Un objeto es una instancia de una clase.
nivel de abstracción alto. Permite describir un conjunto de características
comunes.
la plantilla a partir de la cual se crean los objetos
Objetos
Características
un conjunto de atributos. Los atributos de un objeto contienen valores que determinan el estado del objeto durante su tiempo de vida.
conjunto de métodos. Los métodos se utilizarán para obtener o cambiar el estado de los objetos.
Posee estados. Está determinado por los valores que poseen sus atributos.
Se identifica por un nombre o un identificador único.
posee características y acciones que realiza por sí solo o inter- actuando
con otros objetos. Se caracteriza por sus atributos propios.