programacion
Una interfaz en Java es una colección de métodos abstractos y propiedades. En ellas se especifica qué se debe hacer pero no su implementación. Serán las clases que implementen estas interfaces las que describan la lógica del comportamiento de los métodos.
La principal diferencia entre interface y abstract es que un interface proporciona un mecanismo de encapsulación de losprotocolos de los métodos sin forzar al usuario a utilizar la herencia.
Permite simular algunos aspectos de la herencia múltiple
Define un tipo de datos
Posibilita el enlace dinámico
Otras clases pueden implementar un interfaz
Cualquier clase que implemente un interfaz debe
Definir todos los métodos de dicho interfaz
Debe proporcionar la implementación de dichos métodos
Si la clase noproporciona la implementación para
Declaración de interfaces
Sintaxis
interface NombreInterfaz {
tipo static final NOMBRECONSTANTE1 = valor;
public tipoDevuelto nombreMetodo1(listaParámetros);
}
class NombreClase implements NombreInterfaz1
[, NombreInterfaz2 ..] {
// declaración atributos y método de la clase
}
EJEMPLO
Public interface Nombrable {
static final boolean CIERTO =true;
public void mostrarNombre();
}
public class Elemento implements Nombrable {
String nombre;
public Elemento(String nom) {
nombre = nom; }
// obligatorio implementar método mostrarNombre
public void mostrarNombre(){
System.out.println("Nombre: "+nombre);
if (CIERTO)
System.out.println("Constante CIERTO ");
}
Herencia
La herencia es un mecanismo que permite la definición de unaclase a partir de la definición de otra ya existente. La herencia permite compartir automáticamente métodos y datos entre clases, subclases y objetos.
La herencia está fuertemente ligada a la reutilización del código en la OOP. Esto es, el código de cualquiera de las clases puede ser utilizado sin más que crear una clase derivada de ella, o bien una subclase.
Hay dos tipos deherencia: Herencia Simple y Herencia Múltiple. La primera indica que se pueden definir nuevas clases solamente a partir de una clase inicial mientras que la segunda indica que se pueden definir nuevas clases a partir de dos o más clases iníciales. Java sólo permite herencia simple.
Subclases
El concepto de herencia conduce a una estructura jerárquica de clases o estructura de árbol, lo cual significa que enla OOP todas las relaciones entre clases deben ajustarse a dicha estructura.
En esta estructura jerárquica, cada clase tiene sólo una clase padre. La clase padre de cualquier clase es conocida como susuperclase. La clase hija de una superclase es llamada una subclase.
Una subclase puede tener sólo una superclase.
OBJETO
Un objeto es una instancia de una clase,creada en tiempo de ejecución
Es una estructura de datos formada por tantos
Campos como atributos tiene la clase.
El estado de un objeto viene dado por el valor
De los campos.
Los métodos permiten consultar y modificar el
Estado del objeto
CLASES
DEFINICIÓN: Implementación total o parcial de un TAD
Entidad sintáctica que describen objetos que van a
Tener la misma estructura y elmismo comportamiento.
Doble naturaleza: Módulo + Tipo de Datos
Módulo (concepto sintáctico)
Mecanismo para organizar el software
Tipo (concepto semántico)
Mecanismo de definición de nuevos tipos de datos: describe
una estructura de datos (objetos) y las operaciones aplicables.
EJEMPLO
class Cuenta {
protected int numero_cuenta;
protected double saldo;
public Cuenta(int cuenta,double inicial) {
numero_cuenta=cuenta;
saldo = inicial;
} // Fin constructor cuenta
public void depositar(double cantidad) {
saldo = saldo + cantidad;
} // Fin método deposito
public double saldo(){
return saldo;
} // Fin método saldo
}//fin clase Cuenta
class Banco {
public static void main(String [] args) {
//Se crea la cuenta
Cuenta cuenta_1 = new...
Regístrate para leer el documento completo.