Download Definición de JavaBean Propiedades

Document related concepts
no text concepts found
Transcript
Definición de JavaBean
Un JavaBean o bean es un componente hecho en software que se puede reutilizar y
que puede ser manipulado visualmente por una herramienta de programación en lenguaje
Java.
Aunque los beans individuales pueden variar ampliamente en funcionalidad desde los
más simples a los más complejos, todos ellos comparten las siguientes características:
•
•
•
•
•
Introspection: Permite a la IDE analizar cómo trabaja el bean
Customization: El programador puede alterar la apariencia y la conducta del bean.
Events: Informa a la IDE los sucesos que pueden ser generados en respuesta a las
acciones del usuario o del sistema, y también los sucesos que puede manejar.
Properties: Permite cambiar los valores de las propiedades del bean para
personalizarlo (customization).
Persistence: Se puede guardar el estado de los beans que han sido personalizados
por el programador.
En general, un bean es una clase que obedece ciertas reglas:
•
•
•
Un bean debe tener un constructor por defecto (sin argumentos)
Un bean debe tener persistencia, es decir, implementar el interface Serializable.
Un bean debe tener introspección (instrospection). Los IDE reconocen ciertas
pautas de diseño, nombres de las métodos y definiciones de las clases, que permiten
a la herramienta de programación mirar dentro del bean y conocer sus propiedades y
su conducta.
Propiedades
Una propiedad es un atributo del JavaBean que afecta a su apariencia o a su conducta.
Por ejemplo, un botón puede tener las siguientes propiedades: tamaño, posición, título,
color de fondo, color de texto, si está o no habilitado, etc.
Las propiedades de un bean pueden examinarse y modificarse mediante métodos que
acceden a dicha propiedad, y pueden ser de dos tipos:
•
•
getter method: lee el valor de la propiedad
setter method: cambia el valor de la propiedad.
Las especificaciones JavaBeans definen un conjunto de convenciones (design
patterns) que el IDE usa para inferir qué métodos corresponden a propiedades.
public void setNombrePropiedad(TipoPropiedad valor)
public TipoPropiedad getNombrePropiedad( )
Propiedades simples
Una propiedad simple representa un único valor. Ejemplo:
private String nombre;
//métodos set y get de la propiedad denominada nombre
public void setNombre(String nombre){
this.nombre=nombre;
}
public String getNombre(){
return this.nombre;
}
En el caso de que dicha propiedad sea booleana se escribe:
private boolean conectado=false;
//métodos set y get de la propiedad denominada conectado
public void setConectado(boolean nuevoValor){
this.conectado=nuevoValor;
}
public boolean isConectado(){
return this.conectado;
}
Propiedades indexadas
Una propiedad indexada representa un array de valores.
private int[] numeros={1,2,3,4};
//métodos set y get de la propiedad denominada numeros,
//para el array completo
public void setNumeros(int[] numeros){
this.numeros=numeros;
}
public int[] getNumeros(){
return this.numeros;
}
//métodos get y set para un elemento de array
public void setNumeros(int indice, int nuevoValor){
this.numeros[indice]=nuevoValor;
}
public int getNumeros(int indice){
return this.numeros[indice];
}
Propiedades ligadas (bound)
Una propiedad para la cual un cambio en su valor, resulta en una notificación a otros
objetos.
Propiedades restringidas (constrained)
Una propiedad para la cual un ambio en su valor resulta en una validación por otro
objeto. El otro objeto puede rechazar el cambio si no es apropiado.
Recursos web
http://java.sun.com/developer/onlineTraining/Beans/Beans1/
http://java.sun.com/docs/books/tutorial/javabeans/
http://java.sun.com/javase/technologies/desktop/javabeans/docs/spec.html