La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Programación orientada a Objetos II SESION 02: Diseño de Clases. Constructores y Destructores 1.

Presentaciones similares


Presentación del tema: "Programación orientada a Objetos II SESION 02: Diseño de Clases. Constructores y Destructores 1."— Transcripción de la presentación:

1 Programación orientada a Objetos II SESION 02: Diseño de Clases. Constructores y Destructores 1

2 Una clase es simplemente una representación de un tipo de objeto; piense en ella como un plano que describe el objeto. Así como un plano puede utilizarse para construir varios edificios, una clase puede utilizarse para crear varias copias de un objeto. Aunque puede que no se haya dado cuenta, ya ha utilizado las clases. Por ejemplo, el control TextBox lo define una clase TextBox, que define su aspecto y sus funciones. Cada vez que arrastra un control TextBox a un formulario, realmente está creando una nueva instancia de la clase TextBox. Cada control TextBox es una copia exacta, aunque distinta, de la clase que lo define, la clase TextBox. Puesto que cada objeto es una "instancia" independiente de una clase, la acción de crear una clase se denomina creación de instancias.TextBox Hasta ahora ha agregado los controles TextBox a su formulario arrastrándolos desde el Cuadro de herramientas, pero también puede crear instancias de un objeto TextBox en su código si utiliza la palabra clave New. 2

3 3

4 4

5 5

6 6

7 7

8 El constructor de una clase es un método estándar para inicializar los objetos de esa clase. Es una función que se ejecuta siempre al crear un objeto. Los constructores de una clase tienen siempre el nombre de la clase y no tiene ningún valor devuelto (ni siquiera void). Si el usuario no declara un constructor el sistema (En este caso Java) siempre crea un constructor por defecto sin argumentos. En el momento en el que el usuario define un constructor el constructor del sistema se elimina y es sustituido por el, o los, constructores definidos (al tratarse de un método más el constructor puede sobrecargarse). Para inicializar un objeto basta con llamar a su constructor después de la palabra reservada new y asignarlo a una referencia declarada previamente. Un constructor es un método que se ejecuta cada vez que se crea un objeto, el propósito de este procedimiento es el de inicializar los datos del objeto. El nombre del constructor siempre es igual al nombre de la clase. Se invoca automáticamente cuando new crea un objeto de esa clase. Los constructores se declaran en el momento de definir la clase. Un constructor puede llamar a otro definido por medio de la palabra this 8

9 El constructor puede tener parámetros. En este caso, se deben colocar los argumentos respectivos al crear el objeto: Se pueden colocar varios constructores. Durante la creación de un objeto, se invoca aquel que calza con los argumentos dados: 9

10 10

11 11

12 Un destructor es un método que se invoca automáticamente cuando el objeto se destruye. JAVA no posee destructores, porque tiene recolección de basuras. C++ posee destructores. Un destructor es un método que es ejecutado cada vez que se destruye (se elimina de RAM) un objeto, el objetivo de este método es el de eliminar toda la memoria que ocupó un objeto. En JAVA no es necesaria la definición de destructores (es más no existen), pues el mismo lenguaje se encarga de la eliminación y liberación de la memoria ocupada por un objeto, esto se realiza cada vez que un objeto pierde todas sus referencias. En resumen es un método de clase que sirve para realizar ciertas operaciones necesarias al dejar de existir un objeto, por ejemplo, cerrar conexiones de una comunicación, cerrar ficheros, etc. Java dispone de un elemento denominado recolector de basura (garbage collector) que se encarga de liberar memoria asignada a objetos que ya no se utilizan, aún así en ocasiones será necesario disponer de una función que realice operaciones adicionales a la mera liberación de memoria. Para este fin se crea un método, denominado finalize, con las siguientes características: protected void finalize() throws throwable { … cuerpo del destructor } 12

13 El IDE NetBeans es un entorno de desarrollo Open Source escrito en Java. Como este será el entorno de desarrollo utilizado durante el curso, es conveniente realizar el ya célebre programa Hola Mundo para saber como: crear un nuevo proyecto crear un nuevo paquete crear una nueva Clase compilar una Clase ejecutar una Clase Crear un nuevo proyecto NetBeans al igual que la mayoría de los entornos de desarrollo, aloja sus aplicaciones en proyectos. Estos proyectos sólo tienen sentido Cuando estamos desarrollando. Cuando una aplicación pasa a producción, el concepto de proyecto del entorno de desarrollo se pierde En nuestro caso, crearemos un proyecto llamado proholamundo siguiendo los siguientes pasos elegimos File | New Project... 13

14 en el cuadro de dialogo New Project elegimos Java y Java Application y seguidamente hacemos clic sobre el botón En el cuadro de diálogo New Java Application tenemos que rellenar los siguientes campos Project Name: proholamundo durante el curso seguiremos una convención a nivel didáctico que va a consistir en poner el prefijo pro a todos los nombres de los proyectos que crearemos Project Location: C:\isg\j2se\prosjava vamos a hacer clic sobre el botón para indicar que queremos que nuestro proyecto se aloje por debajo de los directorios C:\isg\j2se\prosjava durante el curso iremos añadiendo todos los diferentes proyectos debajo de esta jerarquía de directorios Set as main project: lo dejamos marcado Create Main Class: lo desmarcamos seguidamente hacemos clic sobre el botón 14

15 Crear un nuevo paquete Cuando estamos realizando aplicaciones de cierta envergadura, tenemos que incluir las Clases de nuestra aplicación en paquetes (packages) para poder obtener una serie de ventajas que ya veremos más adelante Estos paquetes tienen sentido tanto en el proceso de desarrollo como en el de producción Los paquetes no están ligados a un entrono de desarrollo, sino que es una parte integral y esencial del lenguaje Java En nuestro caso, crearemos un paquete llamado paqholamundo siguiendo los siguientes pasos Nos situamos en la ventana Projects y con el botón derecho del ratón seleccionamos la carpeta Source Packages correspondiente al proyecto proholamundo que acabamos de crear. Elegimos new | Java Package... y en el cuadro de diálogo New Java Package introducimos el nombre del paquete paqholamundo y hacemos clic sobre el botón 15

16 Crear una nueva Clase En Java los programas o aplicaciones se escriben en ficheros que tienen la extensión.java una aplicación puede tener uno o más ficheros con extensión.java cada uno de estos ficheros.java contiene una Clase cada vez que se crea una nueva Clase, se crea su correspondiente fichero con el nombre de la Clase y con extensión.java En nuestro caso, vamos a crear una Clase que la vamos a llamar HolaMundo siguiendo los siguientes pasos nos situamos en la ventana Projects y con el botón derecho del ratón seleccionamos el paquete paqholamundo elegimos new | Other... 16

17 En el cuadro de diálogo New File elegimos la categoría Java y el tipo de fichero Java Main Class y hacemos clic sobre el botón en el campo de Texto Class Name indicamos que la Clase se va a llamar HolaMundo y hacemos clic sobre el botón Este es el código generado por el Asistente de NetBeans package paqholamundo; en esta primera línea de código, estamos indicando que la clase HolaMundo pertenece al paquete paqholamundo public class HolaMundo { } aquí estamos declarando el nombre de la Clase, es muy importante mencionar que todo código Java que se escriba tiene que estar obligatoriamente incluido dentro de una Clase es decir el código java siempre estará dentro del bloque (indicado entre llaves {}) de esa Clase public static void main(String[] args) { } aquí estamos declarando el método main(...) de momento saber que la MVJ (Máquina virtual Java) cuando tiene que ejecutar la aplicación HolaMundo, lo primero que hace es buscar este método como punto de entrada a la aplicación 17

18 Y para que nos muestre el mensaje Hola Mundo..., tenemos que añadir el siguiente código al método main(...) Nota: Podemos ahorrarnos toda la escritura de la línea System.out.println(""); escribiendo sout y seguidamente presionando la tecla tabulador 18

19 En Java, las Clases compiladas se encuentran en ficheros que tienen la extensión.class al contenido de estas clases se le denomina código byte si no tuviéramos un IDE como NetBeans tendríamos que ejecutar el comando javac En nuestro caso, compilaremos la Clase HolaMundo situándonos en la ventana Projects. Seguidamente seleccionamos con el botón derecho del ratón la Clase HolaMundo.java y elegimos Compile File F9. Esta acción hace que Netbeans ejecute de forma transparente para nosotros el comando javac A diferencia de los lenguajes compilados que ejecutamos ficheros con la extensión.exe, en java se ejecutan los ficheros con extensión.class si no tuviéramos un IDE como NetBeans tendríamos que ejecutar el comando java, cuya utilización ya veremos más adelante Para ejecutar la Clase HolaMundo nos vamos a situar en la ventana Projects. Seguidamente seleccionamos con el botón derecho del ratón la Clase HolaMundo.java y elegimos Run File Mayúsculas+F6 19

20 Y finalmente ya vemos el mensaje "Hola Mundo..." en la ventana Output 20

21 Programación orientada a Objetos II SESION 03: Programación Orientada a Objetos: Setter y Getter 21

22 Definicion de Setter y Getter Ejemplos a nivel de Programación (4) Alcances: Públicos, Privados y Protegidos 22


Descargar ppt "Programación orientada a Objetos II SESION 02: Diseño de Clases. Constructores y Destructores 1."

Presentaciones similares


Anuncios Google