|
Listar Los Interfaces Implementados Por Una Clase En Java
LISTAR LOS INTERFACES IMPLEMENTADOS POR UNA CLASE
Cuadno se crea una clase se puede especificar que interface, si lo hay, esta implementado por una clase. Una interface declara un conjunto de metodos y constantes sin especificar su implementacion para ningun metoo. Cuando una clase exige la implementacion de un interface, debe dar la implementacion para todos los metodos declarados en el interface.
Para declarar que una clase implementa uno o mas interfaces, hay que usar la palabra clave implements seguida por una lista de los interfaces implementados por la clase delimitada por comas. Ejemplo, un interface que se llama numeroImaginario puede declarar que implementa el interface Aritmetico de esta forma:
Class NumeroImaginario extendí Number implements Aritmetico {
}
Se debe garantiza que da la implementacion para los metodos suma(), resta() y demas metodos declaradps en el interface Aritmetico.
CLASES PUBLIC, ABSTRACT Y FINAL
Son modificadores de las clases, van delante de la palabra clave class y son opcionales.
El modificador public declara que puede ser usada por objetos que esten fuera del paquete actual.
Public class NumeroImaginario extendí Number implements Aritmetico {
}
Cuando se usa public en una declaracion de clase hay quq asegurarse de quees el primer item de la declaracion.
El modificador abstract declara que la clase es una clase abstracta , o sea podria contener metodos abstractos (sin implementacion). Esta diseñadapara ser una superclase y no puede ejemplarizarse.
Usando el modificador final se puede declara que una clase es final, que no puede tener subclases. Existen (al menos) dos razones por las que se podría querer hacer esto: razones de seguridad y de diseño.
No todo tiene sentido para una clase abstracta y final. Una clase. Ponele que hay una clase que tenga metodos no implementados, esta no puede ser final. Si intentas declarar una clase como abstracta y final el compilador te va a tirar un error.
SUMARIO DE LA DECLARACION DE UNA CLASE
La declaracion de una clase es asi:
[modificadores] class NombredeClase [extendí NombredeSuperclase]
[implements NombreInterface]
}
Los puntos entre corchetes cuadrados [] son opcionales. Con una declaracion de una clase definis:
Modificadores : declaran si la clase es abstracta, publica o final
NombredeClase: selecciona el nombre
NombredeSuperclase: es el nombre de la superclase
NombredeInterface: es una lista delimitada por comas de los interfaces implementados por NombreClase
La palabra class va siempre porque es clave y nombre le tenes que poner, los otros son opcionales.
EL CUERPO DE UNA CLASE
DeclaraciopndeClase {
CuerpodeClase
}
El cuerpo de una clase compone la implementacion de la propia clase y tiene dos secciones diferentes:
-Declaracion de variables
-Declaracion de los metodos
Una variable miembro de la clase representa un estado de la clase y el metodo implementa el comportamiento de la clase. Dentro del cuerpo de la case se define todas las variables miembro y todos los metodos soportados por la clase.
Primero se declaran las variables miembro de la clase y después se da las declaraciones e implementacioned de los metodos, igual el orden no es necesario.
DeclaraciondeClase {
DeclaracionesdeVariablesMiembros
Declaracionesdemetodos
}
Ejemplo de clase que declara tres variables miembro y un metodo:
Class Ticket {
Flota precio;
String destino;
Date fechaSalida;
Void firma (Flota forPreio, String forDestino, Date for Fecha) {
Precio =forPrecio;
Destino=forDestino
fechaSalida=forFecha;
}
}
Ademas de las variables miembro y los metodos una clase puede heredar algo de su superclase. Por ejemplo todas las clases del entorno Jva son una descendencia (directa o indirecta) de la clase Object. La clase Object define el estado basico y el comportamiento que todos los objetos deben tener como habilidad para comparar unos objetos con otros, para convertir una cadena, para esperar una condicion variable, para notificar a otros objetos que una condicion variable ha cambiado etc..Asi, como descendientes de esta clase, todos los objetos del entorno Java heredan sos comportamientos de la clase Object.
DECLARA VARIABLES MIEMBRO
Una declaracion de variable miembro tien por lo menos dos componentes: tipo de dato y el nombre de la variable.
Tipo nombrevariable; // Declaracion minima de una variable miembro
Ejemplo declarar una variable miembro entera que se llama unEntero dentro de la clase ClaseEnteros
Class ClaseEnteros {
Int unEntero;
// define los metodos aquí
}
Notar que la declaracion de variables miembro aparece dentro de la implementacion del cuerpo de una clase pero no dentro de un metodo. Eso hace que sea una variable miembro (que este dentro del cuerpo)
El tipo de variable determina lso valores que pueden ser asignados a las variables y las operaciones que se pueden hacer con ellas.
Un nombre de una variable miembro puede ser cualquie identificador legal de Java y por convencion empieza con una letra minúscula (tipicamente empiezan con una mayuscula). No se puede declarar mas de una variable con el mismo nombre en la misma clase
Ej codigo legal para hacerlo:
Class ClassEnteros {
int unEntero;
int unEntero() // un metodo con el mismo nombre que una variable
}
}
Con el nombre y el tipo, se especifican varios atributos para las variables miembro cuando se las declara(si los objetos pueden acceder a la variable, si las variable es una variable de clase o una variable de ejemplar, y si la variables es una constante)
Ejemplo declaracion de variable:
[especificadordeAcceso] [static] [final] [transient] [volatile] tipo nombredevariable
Los puntos entre corchetes cuadrados son opcionales.
Una declaracion de variable miembro define:
Especificadotes de Acceso: si las otras clases tienen accesoa la variable
Static: indica que la variable es una variable miembro de la clase en oposición a una variable miembro del ejemplar. Tambien se puede usar para declara métodos de una clase.
Final: indica que la variable es una constante
Transient: la variable no es parte persistente del estado del objeto.
Volatile: significa que la variable es modificada de forma asincrona.
DECLARAR CONSTANTES
Ha que usar la palabra clave final en su declarcion de variable.
Ej: la sig declaracion de variable define una constante que se llama AVOGADRO y el valor es el numero de Avogadro (6.023x10^23) y no puede ser cambiado
Class Avo {
Final double AVOGADRO = 6.023e23;
}
Por convencion los nobres de los valores constantes se escriben completamente en mayusculas. Si un programa intenta cambiar una variable, el compilador muestra u error y se rehusa a compilar el programa.
DECLARAR VARIABLES TRANSITORIAS
Las variables miembro son una parte persistente del estado de un objeto. Las variables que forman parte persistente del estado del objeto deben guardarse cuando el objeto se archiva. Se puede usar la palabra transient para indicar a la maquina virtual Java que la variable no es parte persistente del objeto.
Se puede usar asi:
Class transientExample{
Transient int hobo;
}
Esto declara que una variable entera que se llama hobo que no e sparte persistente del estado de la claseTransientExample.
DECLARAR VARIABLES VOLATILES
Si una clase contiene una variable miembro que es modificada de forma asincronica, mediante la ejecución de threads concurrentes, se puese utilizar la palabra clave volatile de Java para notificar esto al sistema Java.
La siguiente declaracion de variable es una ejemplo de cómo declarar que una variable va a ser modificada de forma asíncrona por threads concurrentes:
Class volatileexample{
Volatile int contador;
}
|