Bienvenidos a otro capítulo de este Curso Gratis de Java para Hackers – Tutorial de BlueJ en 2024. Comparte este articulo y síguenos para recibir más capítulos, guías y cursos gratis.

Table of Contents

¿Te gustaría enterarte de cuando lanzamos descuentos y nuevos cursos?

Acerca de BlueJ

Este tutorial es una introducción al uso del entorno de programación BlueJ. BlueJ es un entorno de desarrollo para Java™ diseñado específicamente para la enseñanza en un curso introductorio. Fue diseñado e implementado por el equipo de BlueJ en la Universidad de Monash, Melbourne, Australia, y la Universidad de Southern Denmark, Odense.

Más información sobre BlueJ se encuentra disponible en http://www.bluej.org.

Descripción general

BlueJ es un entorno de desarrollo que le permite desarrollar programas Java de forma rápida y sencilla. Sus principales características son que es:

  • Simple BlueJ tiene una interfaz deliberadamente más pequeña y sencilla que los entornos profesionales como NetBeans o Eclipse. Esto permite a los principiantes comenzar más rápidamente y sin sentirse abrumados.
  • Diseñado para la enseñanza BlueJ está diseñado deliberadamente teniendo en mente una buena pedagogía. Hay un libro de texto popular diseñado para enseñar cursos introductorios universitarios/universitarios con BlueJ y un sitio lleno de recursos didácticos.
  • Interactive BlueJ te permite interactuar con objetos. Puede inspeccionar su valor, llamar a métodos, pasarlos como parámetros y más. También puede invocar directamente expresiones Java sin compilar. Por lo tanto, BlueJ es un potente shell gráfico/REPL para Java.
  • Portable BlueJ se ejecuta en Windows, Mac OS X, Linux y otras plataformas que ejecutan Java. También puede ejecutarse sin instalación desde una memoria USB.
  • Mature BlueJ tiene más de quince años, pero continúa siendo actualizado y respaldado por un equipo de tiempo completo. Nuestro objetivo es responder a todas las solicitudes de soporte técnico dentro de un día hábil.
  • El innovador BlueJ tiene varias características que no se habían visto antes en otros IDE. Su banco de objetos, teclado de código y coloración del alcance eran todas características originales de BlueJ.

Introducción de BlueJ

BlueJ es una plataforma basada en Windows para Java Development Kit (JDK). Es un entorno Java gratuito iniciado en 1999 por Michael Kolling y John Rosenberg en la Universidad de Monash, Australia, como sucesor de Blue. Requiere instalar JDK versión 1.3 o superior antes de instalar BlueJ. Se puede descargar gratuitamente desde su sitio web oficial de BlueJ. Fue desarrollado para apoyar el aprendizaje y la enseñanza de POO (programación orientada a objetos).

Los objetos se pueden crear y probar de forma interactiva. Es una interfaz de usuario sencilla, BlueJ tiene una interfaz más sencilla que la mayoría de los IDE profesionales. Ofrece muchas herramientas que son específicas para sus objetivos educativos. También hay herramientas de desarrollo estándar disponibles, como un editor, un compilador y un entorno de ejecución. 

Características de BlueJ:

  • Las tareas se pueden realizar de forma más cómoda.
  • Le muestra un programa de muestra para darle una breve idea de programación.
  • La depuración es sencilla ya que indica errores en la parte inferior de la pantalla.
  • Es una interfaz más sencilla que cualquier otro IDE.
  • Tiene algunas características nuevas que no se ven en ningún otro IDE.
  • BlueJ puede ejecutarse en Windows, MacOS, Linux o cualquier plataforma que ejecute Java.
  • Te permite interactuar con objetos.

¿Cómo instalar BlueJ? 

Asegúrese de tener JDK instalado primero antes de descargar e instalar BlueJ, de lo contrario no funcionará.

  1. Vaya a la página oficial de BlueJ, haga clic en el enlace según su preferencia, ya sea Windows, Mac Os o Linux.
  2. Aparecerá el cuadro de configuración de BueJ, haga clic en Siguiente.
  3. En la página siguiente, haga clic en Siguiente.
  4. Luego haga clic en Instalar y finalizar.

¿Cómo iniciar BlueJ?

  1. Haga doble clic en el icono BlueJ disponible en el escritorio para iniciar Java.
  2. La ventana de BlueJ aparecerá en su pantalla.
  3. La pantalla muestra «Proyecto» en la esquina superior izquierda. Es la creación de una carpeta que contiene varias clases de BlueJ.
  4. Haga clic en él y seleccione ‘Nuevo proyecto’ en el menú desplegable.
  5. Ingrese el nombre del archivo (por ejemplo, Muestra) y finalmente haga clic en el botón Crear.
  6. La carpeta del proyecto creada con el nombre de la muestra se crea y se muestra en su pantalla.
  7. Ahora, haga clic en ‘Nueva clase’ (supongamos que se llama ‘bienvenida’ e ingrese el nombre de la clase en el cuadro de texto).
  8. Finalmente, haga clic en Aceptar para crear el icono de clase. (El nombre de la clase es básicamente el nombre del programa donde se guarda su programa en el disco duro).
  9. Al hacer doble clic en el icono ‘bienvenido’, se muestra el programa de muestra
  10. Luego, para escribir su programa, elimine el programa de muestra disponible en la ventana.
  11. Luego, escriba su programa.
  12. Después de completar su programa, haga clic en el botón «compilar».
  13. Si su programa no tiene errores, aparecerá un mensaje en la pantalla en el panel inferior como «Clase compilada, sin errores de sintaxis». Ahora está listo para ejecutar el programa.

Ejecución de un programa:

  1. Después de una compilación exitosa del programa, seleccione el ícono de clase y haga clic con el botón derecho del mouse. Aparece un menú desplegable. Seleccione y haga clic en la opción void main (String args []).
  2. Aparece una ventana de «Llamada de método» en la pantalla, haga clic en Aceptar.
  3. Luego, el resultado deseado se mostrará en la siguiente pantalla.

Idiomas admitidos: 

Java y Stride, ambos idiomas son compatibles con BlueJ. BlueJ ha proporcionado soporte para Java desde sus inicios, mientras que el soporte para Stride se agregó en 2017. BlueJ ahora usa Java 11+, que requiere un sistema operativo de 64 bits que tendrán más del 95% de los usuarios. Para un sistema operativo de 32 bits, descargue BlueJ 4.1.4. en cambio.

Funciones y capturas de pantalla

El editor de BlueJ presenta un resaltado de alcance único, donde el fondo de cada bloque de código está coloreado para permitirle escanear visualmente el código mucho más rápido. También ayuda a detectar llaves mal colocadas.

Los objetos se pueden inspeccionar mientras el programa se está ejecutando. El contenido de los campos se muestra para facilitar la comprensión y la depuración.

Además de permitir la inspección de objetos mientras el programa se ejecuta, los objetos se pueden crear dinámicamente y se pueden invocar sus métodos.

También puede invocar el código Java directamente, sin compilación, simplemente escribiéndolo. El resultado se imprime y luego se puede inspeccionar, manipular o pasar como parámetro a otra llamada a otro método.

Instalación

BlueJ es distribuido en tres formatos diferentes: uno para sistemas Windows, uno para MacOS, y uno para los otros sistemas. La instalación es fácil y rápida.

Prerrequisitos

Debe tener J2SE v1.3 ( o. JDK 1.3 ) o posterior instalado en sus sistema para utilizar BlueJ. Si no tiene instalado el JDK puede descargarlo del sitio web de Sun en http://java.sun.com/j2se/. En MacOS X, una versión reciente del JDK está preinstalada – no necesita instalarla. Si encuentra una página de descargas que ofrece el “JRE”( Java Runtime Environment ) y el “SDK” ( Software Development Kit ), debe descargar el “SDK” – el JRE no es suficiente.

Instalación en Windows

El archivo de distribución para los sistemas Windows es llamado bluejsetup-xxx.exe, donde xxx es un número de versión. Por ejemplo, la distribución de Bluej versión 1.2.0 se llama bluejsetup-120.exe. Puede tener este archivo en disco, o puede descargarlo del sitio web de Bluej http://www.bluej.org. Ejecute este instalador. El instalador le permite seleccionar un directorio para instalarlo. El también ofrece la opción de instalar un acceso directo en el menú de inicio y en el escritorio.

Luego de finalizada la instalación, encontrará el programa bluej.exe en el directorio de instalación de BlueJ. La primera vez que lance BlueJ, él buscará el sistema Java ( JDK ). Si él encuentra disponible más de un sistema Java ( e.j. tiene JDK 1.3.1 y JDK 1.4 instalado ), una ventana de diálogo le dejará seleccionar uno de ellos para utilizarlo. Si él no encuentra un sistema Java, a se le solicitará que lo localice ( esto puede ocurrir cuando un sistema JDK ha sido instalado, pero las correspondientes entradas de registro han sido removidas ).

El instalador de BlueJ también instala un programa llamado vmselect.exe. Usando este programa, puede cambiar posteriormente cuál versión de Java utiliza BlueJ. Ejecute vmselect para ejecutar BlueJ con una versión diferente de Java.

La selección del JDK es almacenado para cada versión de BlueJ. Si tiene diferentes versiones instaladas de BlueJ, puede usar una versión de BlueJ con el JDK 1.3.1 y otra versión de BlueJ con JDK 1.4. Cambiar la versión de Java para BlueJ hará que se cambie para todas las instalaciones de BlueJ de la misma versión para el mismo usuario.


Instalación en Mac

Por favor note que BlueJ se ejecuta solamente en MacOS X. El archivo de distribución para MacOS es llamado BlueJ-xxx.sit, donde xxx es un número de versión. Por ejemplo, la distribución de Bluej versión 1.2.0 se llama BlueJ-120.sit. puede tener este archivo en disco, o puede descargarlo del sitio web de Bluej http://www.bluej.org.

Este archivo puede ser descomprimido por el expansor StuffIt. Muchos navegadores descomprimirán este archivo por . De otro modo, haciendo doble clic se descomprimirá. Luego de descomprimir, tendrá una carpeta llamada BlueJ-xxx. Mueva esta carpeta dentro de su carpeta de Aplicaciones ( o donde quiera guardarlo ). No son necesarias posteriores instalaciones.

Instalación en Linux/Unix y otros sistemas

El archivo de distribución para MacOS es llamado BlueJ-xxx.sit, donde xxx es un número de versión. Por ejemplo, la distribución de Bluej versión 1.2.0 se llama BlueJ-120.sit. Puede tener este archivo en disco, o puede descargarlo del sitio web de Bluej http://www.bluej.org.

El archivo de distribución general es un archivo jar ejecutable. Se llama bluej-xxx.jar, donde xxx es el número de versión. Por ejemplo, la distribución de Bluej versión 1.2.0 se llama bluej-120.jar. Puede tener este archivo en disco, o puede descargarlo del sitio web de Bluej http://www.bluej.org.

Ejecute el instalador a través del siguiente comando. NOTA: Para este ejemplo, el archivo utilizado es el de la distribución bluej-120.jar – necesita utilizar el nombre del archivo que vaya a utilizar ( con el número de versión correcto ).

< jdk-path>/bin/java -jar bluej-120.jar

< jdk-path> es el directorio, donde el JDK fue instalado.

Una ventana se lanza, permitiéndole escoger el directorio de instalación de Bluej yla versión del JDK utilizada para ejecutar BlueJ. Importante: El camino para BlueJ ( esto es, cualquiera de los directorios padre ) no deben contener espacios en blanco.

Haga clic en Install. Luego de finalizar, BlueJ deberá estar instalado.

Problemas de Instalación

Si tiene algún problema, verifique la sección Frequently Asked Questions ( FAQ ) en el sitio web de BlueJ ( http://www.bluej.org/help/faq.html ) y lea la sección How To Ask For Help ( http://www.bluej.org/help/ask-help.html ).

Comenzando con BlueJ

En Windows y MacOS, está instalado un programa llamado BlueJ. Ejecútelo. En sistemas Unix el instalador guarda un script llamado bluej en el directorio de instalación. Desde una interfaz GUI, haga doble clic en el archivo. Desde una línea de comandos puede iniciar BlueJ con o sin un proyecto como argumento:

$ bluej

o

$ bluej examples/people

Figura 1: La ventana principal de BlueJ

Abriendo un proyecto

Resumen: Para abrir un proyecto, seleccione Open del menú Project.

Los proyectos en BlueJ, como los paquetes estándar en Java, son directorios conteniendo los archivos incluidos en el proyecto. Luego de iniciar BlueJ, use el comando de menú Project – Open… para seleccionar y abrir un proyecto. Algunos proyectos de ejemplo están incluidos en la distribución estándar de BlueJ en el directorio examples.

Para esta sección del tutorial, abra el proyecto people, el cual está incluido en este directorio. puede encontrar el directorio examples en el directorio instalación de BlueJ. Luego de abrir el proyecto, debería ver algo similar a la ventana mostrada en la Figura 1. La ventana puede no lucir exactamente como en su sistema, pero las diferencias deberían ser menores.

Creando objetos

Resumen: Para crear un objeto, seleccione un constructor del menú emergente de la clase.

Una de las características fundamentales de BlueJ es que no puede ejecutar únicamente una aplicación directamente, sino que también debe interactuar directamente con objetos simples pertenecientes a cualquier clase y, ejecutar sus métodos públicos. Una ejecución en BlueJ normalmente se realiza creando un objeto y luego invocando uno de los métodos del objeto. Esto es muy útil durante el desarrollo de una aplicación – puede probar clases individualmente tan pronto como hayan sido escritas. No hay necesidad de escribir primero la aplicación.

Nota:

Los métodos estáticos pueden ser ejecutados directamente sin crear primero un objeto. Uno de los métodos estáticos puede ser “main”, así podemos hacer lo mismo que normalmente pasa en las aplicaciones – iniciar una aplicación sólo ejecutando un método estático main. Regresaremos a esto luego. Primero, haremos algunas otras cosas, cosas más interesantes las cuales normalmente no pueden ser realizadas en los entornos Java.

Los cuadros

Los cuadros que se ven en la parte central de la ventana principal ( etiquetados Database, Person, Staff y Student ) son iconos representando las clases involucradas en esta aplicación. puede obtener un menú con operaciones, aplicable a una clase haciendo clic en el icono de la clase con el botón derecho del ratón (Mac: ctrl.-clic1) ( Figura 2 ). Las operaciones mostradas son operaciones new con cada uno de los constructores definidos para esta clase ( primero ) seguidas por algunas operaciones proporcionadas por el entorno.

Figura 2: Operaciones de Clase ( menú emergente )

Queremos crear un objeto Staff, debería hacer clic derecho sobre el icono de Staff ( lo cual hace que emerja el menú mostrado en la Figura 2 ). El menú muestra dos constructores para crear un objeto Staff, uno con parámetros y otro sin ellos. Primero, seleccione el constructor sin parámetros. Aparece la ventana de diálogo mostrada en la Figura 3.

Figura 3: Creación de Objeto sin parámetros


Esta ventana de diálogo pregunta por un nombre para el objeto a ser creado. Al mismo tiempo, se sugiere un nombre por defecto ( staff_1 ). Este nombre por defecto es lo suficientemente bueno por ahora, así que sólo haga clic en OK. Un objeto Staff será creado.

Desde que el objeto ha sido creado, él se coloca en el área de objetos ( Figura 4 ). Esto es todo lo necesario para crear un objeto: seleccione un constructor del menú de la clase, ejecútelo y tendrá el objeto en el área de objetos.

Figura 4: Un Objeto sobre el área de Objetos

puede haber notado que la clase Person está etiquetada como <<abstract>> ( ésta es una clase abstracta ). notará ( si lo trata de probar ) que no puede crear objetos desde clases abstractas ( como la especificación del lenguaje Java lo define ).

Ejecución

Resumen: Para ejecutar un método, selecciónelo del menú emergente del objeto.

Ahora que ha creado un objeto, puede ejecutar sus operaciones públicas. ( Java llama a las operaciones métodos. ) Haga clic con el botón derecho del ratón sobre el objeto y emerge un menú con las operaciones del objeto ( Figura 5 ). El menú muestra los métodos disponibles para este objeto y dos operaciones especiales proporcionadas por el entorno ( Inspect y Remove ). Discutiremos esto luego. Primero, concentrémonos en los métodos.

Figura 5: El menú de Objeto

ve que existen los métodos getRoom y setRoom los cuales configuran y retornan el número de la habitación para este miembro del staff. Haga un llamado a getRoom. Simplemente selecciónelo de su menú de objeto y éste se ejecutará. Una ventana de diálogo aparece mostrando el resultado del llamado ( Figura 6 ). En este caso el nombre dice “( unknown room )” porque no especificamos ninguna habitación para esta persona.

Figura 6: Ventana mostrando el resultado de una función

Los métodos heredados

Los métodos heredados de una superclase están disponibles a través de un submenú. En la parte superior del menú emergente de objeto existen dos submenús, uno para los métodos heredados de Object y otro para los de Person ( Figura 5 ). puede llamar a los métodos de Person ( tales como getName ) seleccionándolos desde el submenú. Pruébelo. notará que la respuesta es igualmente vaga: se responde “( unknown name )”, debido a que no hemos dado un nombre a la persona.

Ahora tratemos de especificar un número de habitación. Esto se mostrará como un llamado que tiene parámetros. ( Los llamados a getRoom y getName tienen valores de retorno, pero no parámetros ). Llame la función setRoom seleccionándola del menú. Una ventana de diálogo aparece solicitándole que digite un parámetro ( Figura 7 ).

Figura 7: Ventana de Diálogo del Llamado a una función con parámetros

En la parte superior de esta ventana de diálogo se muestra la interfaz del método a ser llamado ( incluyendo el comentario y la signatura ). Debajo de esto, existe un campo de entrada de texto donde puede digitar el parámetro. La signatura al comienzo nos indica se que espera un parámetro de tipo String. Digite la nueva habitación, como una cadena de caracteres ( incluyendo las comillas ) en el campo de texto y haga clic en OK.

Esto es todo – debido a que este método no retorna un parámetro, no hay ventana resaltada. Llame de nuevo al método getRoom para verificar que la habitación realmente ha sido cambiada. Practique la creación de objetos y el llamado de métodos por un rato. Trate llamando al constructor con argumentos y llame algunos otros métodos hasta que se familiarice con estas operaciones.

Editando una clase

Resumen: Para editar el archivo fuente de una clase, haga doble clic sobre su icono de clase.

Hasta ahora hemos tratado solamente son una interfaz de objetos. Ahora es tiempo de profundizar. puede ver la implementación de una clase seleccionando Open Editor desde las operaciones de la clase. ( Recuerde: haga clic derecho sobre el icono de la clase y se muestran las operaciones de la clase. ) Hacer doble clic sobre la clase es un atajo para la misma función. El editor no se describe en mucho detalle dentro de este tutorial, pero no es muy importante para su uso. Los detalles del editor serán descritos luego.

Por ahora, abra la implementación de la clase Staff. Encuentre la implementación del método getRoom. El retorna, como su nombre lo sugiere, el número de la habitación del miembro del staff. Cambiemos el método agregando el prefijo “room” al resultado de la función( así que el método retorna, “room M.3.18” en lugar de sólo “M.3.18” ).

Podemos hacer esto cambiando la línea

return room;

por

return «room » + room;

BlueJ soporta instrucciones Java por completo y sin modificar, así que no hay nada especial acerca de cómo implemente sus clases.

Compilación

Resumen: Para compilar una clase, haga clic en el botón Compile en el editor. Para compilar un proyecto, haga clic en el botón Compile en la ventana de proyecto.

Luego de insertar el texto ( antes de hacer cualquier otra cosa ), verifique la vista del proyecto ( ventana principal ). notará que ha cambiado el icono de clase para la clase Staff: él ahora está rayado. La apariencia rayada marca las clases que no han sido compiladas desde el último cambio. Regrese al editor.

Nota:

debe preguntarse por qué los iconos de clase no fueron rayados cuando abrió por primera vez este proyecto. Esto es porque las clases en el proyecto People fueron distribuidas estando compiladas. A menudo los proyectos en BlueJ son distribuidos sin compilar, así que espere ver más clases sin compilar al abrir un por primera vez un proyecto.

la barra de herramientas

En la barra de herramientas en la parte superior del editor existen algunos botones con funciones utilizadas frecuentemente. Uno de ellos es Compile. Esta función le permite compilar esta clase directamente desde el editor. Ahora haga clic en el botón Compile.

Si usted no tuvo ninguna equivocación, un mensaje debería aparecer en el área de información en la parte inferior del editor, notificándolo que la clase ha sido compilada. Si cometió una equivocación que se basa en un error de sintaxis, la línea de error es marcada y un mensaje de error se muestra en el área de información. ( En el caso de que su compilación funcione correctamente la primera vez, trate de introducir un error de sintaxis ahora – tal como un punto y coma faltante – y compile de nuevo, observe qué aparece )

Luego de que ha compilado exitosamente la clase, cierre el editor.

Nota

No hay necesidad de guardar explícitamente el código fuente de la clase. El código fuente es guardado automáticamente donde sea apropiado ( e.j. cuando el editor se cierra o antes de compilar una clase ). puede guardar explícitamente una clase si lo desea ( hay una función en el menú del editor de clase ), pero esto sólo se necesita realmente si su sistema es inestable y frecuentemente se daña, y se encuentra preocupado sobre la posible pérdida de su trabajo.

La barra de herramientas de la ventana de proyecto también tiene un botón Compile. Esta operación compila el proyecto completo. ( De hecho, ella determina cuáles clases necesitan ser recompiladas y luego recompila aquellas clases en el orden correcto. ) Trate de hacer esto cambiando dos o más clases ( de tal forma que dos o más clases aparecen rayadas en el diagrama de clases ) y luego haga clic en el botón Compile. Si se detecta un error en una de las clases compiladas, el editor se abrirá y la localización del error y el mensaje serán mostrados.

puede notar que el área de objetos está vacía de nuevo. Los objetos son removidos cada vez que la implementación se cambia.

Ayuda con errores del compilador

Resumen: Para obtener ayuda sobre un mensaje de error del compilador, haga clic en el símbolo de interrogación cercano al mensaje de error.

Muy frecuentemente, los estudiantes principiantes tienen dificultad en entender los mensajes de error del compilador. Nosotros tratamos de proporcionar alguna ayuda. Abra el editor de nuevo, introduzca un error en el código fuente, y compile. Un mensaje de error debería mostrarse en el área de información del editor. En la parte derecha del área de información aparece un botón con el símbolo de interrogación ( ? ) en el cual puede hacer clic para obtener más información acerca de este tipo de error ( Figura 8 ).

Figura 8: Un error del compilador y el botón de Ayuda ( Help )

En este momento, los textos de ayuda no están disponibles para todos los mensajes de error. Algunos textos de ayuda aún se deben escribir. Pero es difícil hacerlo – muchos errores ya se han explicado. El resto serán escritos e incluidos en una futura versión de BlueJ.

Haciendo un poco más…

En esta sección cubriremos algunas otras cosas que puede hacer en el entorno. Cosas que no son esenciales, pero utilizadas muy comúnmente.

Inspección

Resumen: Un objeto puede ser pasado como un parámetro a un llamado de un método haciendo clic sobre el icono del objeto.

Cuando ejecuta métodos de un objeto, puede haber notado la operación Inspect, la cual está disponible sobre los objetos además de los métodos definidos para los usuarios ( Figura 5 ). Esta operación permite verificar el estado de las variables de instancia ( “campos” o “fields” ) de objetos. Trate de crear un objeto con algunos valores definidos por el usuario ( e.j. un objeto Staff que tiene parámetros en el constructor ). Luego seleccione Inspect del menú de objeto. Una ventana de diálogo aparece mostrando los campos de objeto, sus tipos y sus valores ( Figura 9 ).

Figura 9: Ventana de diálogo de Inspección

La inspección es útil para verificar rápidamente que una operación mutadora ( una operación que cambia el estado de un objeto ) fue ejecutada correctamente. Así, la inspección es una herramienta simple de traceo.

Ejemplo con la clase Staff

En el ejemplo con la clase Staff, todos los campos son tipos de datos simples ( cualesquiera que no sean objetos o cadenas de caracteres ). El valor de estos tipos puede ser mostrado directamente. puede ver inmediatamente si el constructor ha realizados las asignaciones correctas.

En casos más complejos, los valores de los campos pueden ser referencias a objetos definidos por el usuario. Para un ejemplo de tal caso usaremos otro proyecto. Abra el proyecto people2, el cual se incluye también en la distribución estándar de BlueJ. La ventana del escritorio de people2 se muestra en la Figura 10. Como puede ver, este segundo ejemplo tiene una clase Address además de las clases vistas previamente. Uno de los campos en la clase Person es del tipo Address, definido por el usuario.

Figura 10: La Ventana del proyecto people2

Para lo siguiente que queremos probar – inspección con campos de objeto – cree un objeto Staff y luego llame el método setAddress de este objeto ( lo encontrará en el submenú de los métodos heredados de Person ). Digite una dirección. Internamente, el código de Staff crea un objeto de clase Address y lo almacena en su campo address.

Inspeccione el objeto Staff

Ahora, inspeccione el objeto Staff. La ventana de diálogo de la inspección resultante se muestra en la Figura 11. Los campos dentro del objeto Staff ahora incluyen address. Como puede ver, su valor se muestra como <object reference> – debido a que este objeto es complejo, definido por el usuario, su valor no puede ser mostrado directamente en esta lista. Para examinar luego, seleccione el campo address en la lista y haga clic en el botón Inspect en la ventana de diálogo. ( también puede hacer

doble clic en el campo address. ) Otra ventana de inspección se desplegará, mostrando los detalles del objeto Address ( Figura 12 ).

Figura 11: Inspección con referencia a objeto

Figura 12: Inspección de objeto interno

Si el campo seleccionado es público, entonces en vez de hacer clic en Inspect, también podría seleccionar el campo address y hacer clic en el botón Get. Esta operación coloca el objeto seleccionado en el área de objeto. Allí puede examinarlo más a fondo haciendo llamados a sus métodos.

Pasando objetos como parámetros

Resumen: La inspección de un objeto permite un simple traceo, verificando el estado interno de ese objeto.

Los objetos pueden ser pasados a los métodos de otros objetos. Probemos con un ejemplo. Cree un objeto de la clase Database. ( notará que la clase Database tiene sólo un constructor, el cual no tiene parámetros, así la construcción de un objeto es fácil y rápida. ) El objeto Database tiene la habilidad de almacenar una lista de personas. El tiene operaciones para agregar objetos de tipo Person y mostrar todas las personas almacenadas actualmente. ( Llamarlo actualmente Database es un poco exagerado! )

Si no tiene ya un objeto Staff o Student en el área de objeto, cree uno de estos objetos también. Para lo siguiente, debe tener al mismo tiempo un objeto Database y un objeto Staff o Student en el área de objetos.

Ahora haga el llamado al método addPerson del objeto Database. La signatura le indica que se espera un parámetro de tipo Person. ( Recuerde: la clase Person es abstracta, entonces no hay objetos directamente instanciados del tipo Person. Sino que, debido a la herencia, los objetos Student y Staff se pueden sustituir por objetos Person. Entonces es permitido un Student o Staff donde se espera un objeto Person. )

Pasar el objeto

Para pasar el objeto, el cual tiene en el área de objetos, como parámetro al llamado que está haciendo, puede digitar su nombre en el campo del parámetro o, como un atajo, haga clic en el objeto. Esto agrega el nombre dentro de la ventana de diálogo del método. Haga clic en el botón OK y luego el llamado se realiza. Debido a que no hay valor retornado para este método, no vemos el resultado inmediatamente.

puede llamar el método listAll sobre el objeto Database para verificar que la operación realmente se produjo. La operación listAll escribe la operación de la persona en la salida estándar. notará que una ventana de terminal de texto se abre automáticamente para mostrar el texto.

Haga de nuevo esto con más de una persona almacenada en “database”.

Creando un nuevo proyecto

Este capítulo lo conduce por un tour rápido sobre la configuración de un nuevo proyecto.

Creando el directorio del proyecto

Resumen: Para crear un proyecto, seleccionar New… del menú Project.

Para crear un nuevo proyecto, seleccione Project – New… del menú. Una ventana de diálogo de selección de archivo se abre para dejarle especificar el nombre y la localización del nuevo proyecto. Trate de hacer esto ahora. puede escoger cualquier nombre para su proyecto. Luego de hacer clic en el botón OK, un directorio será creado con el nombre que especificó, y la ventana principal muestra el nuevo proyecto, vacío .

Creando clases

Resumen: Para crear una clase, haga clic el botón New Class y especifique el nombre de la clase.

Ahora puede cambiar sus clases haciendo clic en el botón New Class ubicado en la barra de herramientas del proyecto. Se le solicitará un nombre para la clase –este nombre tiene que ser un identificador Java válido.

también puede escoger entre cuatro tipos de clases: abstract, interface, applet o “standard”. Esta selección determina cuál esqueleto de código se crea inicialmente para su clase.  puede cambiar el tipo de la clase luego, editando el código fuente ( por ejemplo, agregando la palabra clave “abstract” en el código ).

Después de crear una clase, ella es representada por un icono en el diagrama. Si ella no es una clase estándar, el tipo ( interface, abstract, o applet ) se indica en el icono de la clase. Cuando abre el editor para una nueva clase, notará que se crea un esqueleto por defecto para una clase – esto debería facilitar el comienzo del trabajo. El código por defecto es correcto sintácticamente. Ella puede ser compilada ( pero no hace mucho ). Trate de crear algunas pocas clases y compilarlas.

Creando dependencias

Resumen: Para crear una flecha, haga clic en el botón de la flecha y arrastre la flecha en el diagrama, o sólo escriba el código fuente en el editor.

El diagrama de clases muestra dependencias entre clases en la forma de flechas. Las relaciones de herencia ( “extends” o “implements” ) se muestran como flechas con cabeza triangular; las relaciones de uso, “uses”, se muestran como flechas simples.

puede agregar dependencias ya sea gráficamente ( directamente en el diagrama ) o textualmente en el código fuente. Si agrega una flecha gráficamente, se actualiza el código fuente automáticamente; si agrega una dependencia en el código, el diagrama se actualiza.

Para agregar una flecha gráficamente, haga clic en el botón de la flecha apropiada ( flecha con cabeza triangular para “extends” o “implements”, flecha simple para “uses” ) y arrastre la flecha de una clase a otra.

Agregando una flecha de herencia se inserta una definición “extends” o “implements” en el código fuente de la clase ( dependiendo si el objetivo es una clase o una interfaz ).

Agregando una flecha “uses” no cambia inmediatamente el código ( a menos que el objetivo sea una clase de otro paquete. En tal caso se genera una instrucción “import”, pero no hemos visto eso aún en los ejemplos ). Teniendo una flecha “uses” en el diagrama que apunte a una clase que actualmente es usada en el código, generará luego un mensaje de alerta avisando que la relación “uses” hacia una clase fue declarada pero la clase nunca fue utilizada.

Agregar las flechas en el texto es fácil: sólo digite el código como lo hace normalmente. Tan pronto como la clase es guardada, el diagrama se actualiza. ( y recuerde: cerrando el editor automáticamente se guarda el código. )

Removiendo elementos

Resumen: Para remover una clase, seleccione la función Remove de su menú emergente. Para remover una flecha, seleccione Remove del menú Edit y haga clic en la flecha.

Ahora, Para remover una clase del diagrama, seleccione la clase y luego seleccione Remove Class del menú Edit. también puede seleccionar Remove del menú emergente de la clase. Para remover una flecha, seleccione Remove Arrow del menú y luego seleccione la flecha que desee remover.

Traceando

Esta sección introduce los aspectos más importantes de la funcionalidad de traceo en BlueJ. En charlas con profesores de computación, nosotros hemos escuchado muy a menudo el comentario que el uso de un traceador en primer año de enseñanza sería recomendable, pero no hay tiempo suficiente para introducirlo. Los estudiantes trabajan con el editor, compilador y la ejecución; no existe más tiempo para introducir otra herramienta complicada.

Esta es la razón por la que hemos decidido hacer el traceador tan simple como sea posible. La meta es tener un traceador que pueda explicar en 15 minutos, y que los estudiantes sólo lo usen luego o en posteriores instrucciones. Observemos si se tuvo éxito.

Primero que todo, hemos reducido la funcionalidad de los traceadores tradicionales a tres tareas:

– configurar puntos de parada ( breakpoints )

– avanzar paso a paso a través del código

– inspeccionar variables

Por lo tanto, cada una de estas tres tareas es muy simple. Ahora probaremos cada una de ellas.

Para comenzar, abra el proyecto debugdemo, el cual está incluido en el directorio examples en la distribución de Bluej. Este proyecto contiene unas pocas clases para el único propósito de demostrar la funcionalidad del traceador – de otra manera este proyecto no tendría mucho sentido.

Configurando puntos de parada

Resumen: Para configurar un punto de parada ( breakpoint ), haga clic en el área del punto de parada a la izquierda del texto del editor.

Configurar un punto de parada le permite interrumpir la ejecución en cierto punto en el código. Cuando la ejecución se interrumpe, puede investigar el estado de sus objetos. Esto a menudo le ayuda a entender qué está pasando en su código.

En el editor, a la izquierda del texto, está el área de puntos de parada ( Figura 13 ). puede configurar un punto de parada haciendo clic dentro de esta área. Un pequeño signo stop aparece para marcar el punto de parada. Pruebe esto ahora. Abra la clase Demo, encuentre el método loop, y configure un punto de parada en algún lugar dentro del ciclo for. El signo stop debería aparecer en su editor.

Figura 13: Punto de parada

Cuando una línea de código es alcanzada y tiene un punto de parada asociado, entonces la ejecución es interrumpida. Pruébelo ahora.

Cree un objeto de la clase Demo y llame al método loop con un parámetro, por ejemplo, 10. Tan pronto como el punto de parada se alcanza, la ventana del editor emerge, mostrando la línea de código actual, y una ventana del traceador emerge. Se verá algo como la Figura

Figura 14: Ventana del Traceador

La línea marcada en el editor indica la línea que será ejecutada luego. ( La ejecución se detiene antes que esta línea sea ejecutada. )


Paso a paso a través del código

Resumen: Para ir paso a paso a través del código, use los botones Step y Step Into del traceador.

Ahora que hemos detenido la ejecución ( la cual nos convence que el método realmente se puede ejecutar y que este punto en el código se alcanza ), podemos avanzar con pasos simples a través del código y ver cómo progresa la ejecución. Para hacer esto, haga clic repetidamente en el botón Step dentro de la ventana del traceador. debería ver la línea de código cambiando dentro del editor ( la marca de línea se mueve con la línea que se ejecuta ).

Cada vez que hace clic en el botón Step, una línea simple de código se ejecuta y la ejecución se detiene de nuevo. Note también que los valores de las variables mostradas en la ventana del traceador cambian ( por ejemplo el valor de sum. ) Así puede ejecutar paso a paso y observar qué pasa. Cuando se canse de esto, puede hacer clic en el punto de parada de nuevo para removerlo, y luego clic en el botón Continue dentro de la ventana del traceador para reiniciar la ejecución y continuar normalmente.

Probemos de nuevo con otro método. Configure un punto de parada en la clase Demo, método carTest( ), en la línea que dice

places = myCar.seats( );

Llame al método.

Cuando se alcanza el punto de parada, está a punto de ejecutar una línea que contiene un llamado a un método, el método seats( ) en la clase Car. Haciendo clic en Step se podría pasar sobre la línea completa. Probemos en este momento Step Into.

Si  pasa dentro de un llamado al método, entonces entra en el método y ejecuta las líneas pertenecientes a ese método línea por línea ( no como un simple paso ). En este caso, se encuentra dentro del método seats( ) en la clase Car. ahora puede pasar felizmente a través de este método hasta que alcance el final y retorne al método que lo llamó. Note cómo el traceador muestra los cambios.

Step y Step Into se comportan igual si la línea actual no contiene llamados a métodos.

Inspeccionando variables

Resumen: Inspeccionar variables es fácil – ellas son mostradas automáticamente en el traceador.

Cuando tracea su código es importante estar habilitado para inspeccionar el estado de sus objetos ( variables locales y variables de instancia ).

Hacer esto es trivial – la mayoría de cosas ya las ha visto. no necesita comandos especiales para inspeccionar variables, variables estáticas, variables de instancia del objeto actual y variables locales del método actual, siempre todas son automáticamente mostradas y actualizadas.


puede seleccionar métodos en la secuencia de llamado para ver variables de otros métodos y objetos activos actualmente. Pruebe, por ejemplo, un punto de parada en el método carTest( ), de nuevo. En el lado izquierdo de la ventana del traceador, ve la secuencia de llamado. El actualmente muestra

Car.seats Demo.carTest

Esto indica que Car.seats fue llamada por Demo.carTest. puede seleccionar Demo.carTest en esta lista para inspeccionar el código fuente y los valores actuales de las variables en este método.

Si pasa por la línea que contiene la instrucción new Car( … ), puede observar que el valor de la variable local myCar se muestra como <object reference>. Todos los valores de tipo objeto ( excepto para los String ) se muestran de esta manera. puede inspeccionar esta variable haciendo doble clic sobre ella. Haciendo esto abrirá una ventana de inspección de objeto identica a la descrita anteriormente ( sección 4.1 ). No existe diferencia real entre inspeccionar objetos aquí e inspeccionar objetos en el área de objetos.

Detener y terminar

Resumen: Detener y terminar ( Halt Terminate ) pueden ser utilizados para detener una ejecución temporal o permanentemente.

Algunas veces un programa está ejecutándose por mucho tiempo, y debe adivinar si todo está funcionando bien. Quizás existe un ciclo infinito, quizás este proceso toma mucho tiempo. Bien, podemos verificar. Llame el método longloop( ) de la clase Demo. Esta ejecución demora un momento.

Ahora queremos saber qué es lo que pasa. Muestre la ventana del traceador, si aún no se encuentra en la pantalla. ( De otro modo, haga clic en el símbolo cambiante que indica que la máquina se está ejecutando, este es un atajo para mostrar el traceador. )

Ahora haga clic en el botón Halt. La ejecución se interrumpe tal como si tuviéramos un punto de parada. ahora puede pasar algunas líneas, observe las variables, y vea que todo está bien – esto necesita sólo un poco más de tiempo para completarse. puede escoger sólo algunas veces Continue y Halt para ver qué tan rápido está contando. Si no desea seguir ( por ejemplo, ha descubierto que se encuentra realmente en un ciclo infinito )  puede sólo presionar Terminate para terminar la ejecución total. Terminate no debería ser utilizado muy frecuentemente – puede dejar objetos escritos perfectamente en un estado consistente para terminar la máquina, así que es aconsejable usarlo sólo como un mecanismo de emergencia.

Creando aplicaciones de escritorio

Resumen: Para crear una aplicación de escritorio, use Project – Export…

BlueJ puede crear archivos jar ejecutables. Los archivos jar ejecutables pueden ser ejecutados en algunos sistemas hacienda doble clic en el archivo ( por ejemplo en Windows y MacOS X ), o utilizando el comando java -jar <file-name>.jar ( Unix o DOS prompt ).

Probaremos esto con el proyecto de ejemplo hello. Abralo ( está en el directorio examples ). Asegúrese de que el proyecto está compilado. Seleccione la función Export… del menú Project.

Una ventana de diálogo se abre para dejarle especificar el formato de almacenamiento ( Figura 15 ). Escoja «jar file» para crear un archivos jar ejecutable. Para crear el archivo jar ejecutable, también tiene que especificar una clase principal “main class”. Esta clase debe tener definido un método main válido ( con la signatura public static void main( String[] args ) ).

Rjemplo

Figura 15: La ventana de diálogo para exportar ( «Export» )

En nuestro ejemplo, la selección de la clase principal es fácil: sólo existe una clase. Seleccione Hello del menú emergente. Si tiene otros proyectos, seleccione la clase que tiene el método «main» que  desea ejecutar.

Usualmente, no debería incluir los archivos fuente en archivos ejecutables. Pero puede, si también desea distribuir sus archivos fuente.
Haga clic en Continue. Luego, verá una ventana de diálogo para selección de archivos que le permite especificar un nombre para el archivo jar a ser creado. Digite hello y haga clic en OK. La creación del archivo ejecutable jar se ha completado.

puede hacer doble clic en el archivo jar sólo si la aplicación usa una interfaz GUI. Nuestro ejemplo usa texto de E/S, así que debemos iniciarla desde una terminal de texto. Trate de ejecutar el archivo jar ahora.

Abra una terminal y vaya al directorio donde  guardó su archivo jar (debería ver un archivo hello.jar ). Asumiendo que Java está instalado correctamente en su sistema, entonces bdebería estar en capacidad de digitar

java -jar hello.jar

para ejecutar el archivo.

Ejecutando un applet

Resumen: Para ejecutar un applet, seleccione Run Applet del menú emergente del applet.

BlueJ permite crear y ejecutar applets al igual que las aplicaciones. Hemos incluido un applet en el directorio examples en la distribución de Bluej. Primero, queremos tratar de ejecutar un applet. Abra el proyecto appletdemo del directorio examples.

verá que este proyecto tiene sólo una clase; ella se llama CaseConverter. El icono de clase está marcado ( con la etiqueta <<applet>> ) como un applet. Luego de compilarla, seleccione el comando Run Applet del menú emergente de la clase.

Una ventana de diálogo emerge para permitirle hacer algunas selecciones ( Figura 16 ).

Figura 16: Ventana de Diálogo para ejecutar applets ( «Run Applet» )

ve que tiene la oportunidad de escoger la ejecución del applet en un navegador ( browser ) o en appletviewer ( o sólo generar la página web sin ejecutarla ). Deje la configuración que viene por defecto y haga clic en OK. Luego de unos pocos segundos,


un visor de applets emergerá mostrando el applet de conversión de mayúsculas y minúsculas “case converter”.

El visor de applets appletviewer está instalado junto con el JDK, así se garantiza que sea la misma versión de su compilador Java. Este visor generalmente causa menos problemas que los navegadores. Su navegador web puede ejecutar una versión diferente de Java y, dependiendo de cuál versión use el navegador, puede causar problemas. Con la mayoría de los navegadores actuales debería funcionar bien, se cree.

En sistemas Microsoft Windows y MacOS, BlueJ usa su navegador por defecto. En sistemas Unix, el navegador es definido en la configuración de BlueJ.

Creando un applet

Resumen: Para crear un applet, haga clic en el botón New Class y seleccione Applet como el tipo de clase.

Luego de haber visto cómo ejecutar un applet, queremos crear uno propio.

Cree una nueva clase con Applet como el tipo de clase (puede seleccionar el tipo en la ventana de diálogo de New Class ). Compile, luego ejecute el applet. Eso es! Eso no estuvo tan mal, no es así?

Los Applets ( como otras clases ) son generados con un esqueleto de clase por defecto que contiene cierto código válido. Para los applets, este código muestra un simple applet con dos líneas de texto. ahora puede abrir el editor y editar el applet para insertar su propio código.

verá que todos los métodos comunes del applet están allí, cada uno con una explicación como comentario explicando su propósito. Todo el código de ejemplo está en el método paint.

Probando el applet

En algunas situaciones puede ser útil crear un objeto applet en el área de objetos ( como para las clases normales ). puede hacer esto – el constructor se muestra en el menú emergente del applet. Desde el área de objeto no puede ejecutar el applet por completo, pero puede llamar algunos métodos. Esto puede ser útil para probar métodos simples que haya escrito como parte de la implementación de su applet.

Abriendo paquetes que no son de BlueJ en BlueJ

Resumen: Paquetes no BlueJ pueden ser abiertos con el comando Project: Open Non BlueJ….

BlueJ le permite abrir paquetes existentes que fueron creados fuera de BlueJ. Para hacer esto, seleccione Project – Open Non BlueJ… del menú. Seleccione el directorio que contiene los archivos fuente de Java, luego haga clic en el botón Open in BlueJ. El sistema le pedirá la confirmación acerca de si quiere abrir este directorio.

Agregando clases existentes a su proyecto

Resumen: Las clases pueden ser copiadas en un proyecto desde afuera utilizando el comando Add Class from File… .

A menudo, quiere usar clases que tenían anteriormente e incluirlas en sus proyectos de BlueJ.

Por ejemplo, un profesor puede dar el código de una clase en Java a sus estudiantes, para ser utilizada en un proyecto. puede incorporar fácilmente una clase existente en su proyecto seleccionando Edit – Add Class from File… del menú. Esto le permitirá seleccionar un archivo fuente Java ( con un nombre terminado en .java ) para ser importado.

Cuando la clase es importada en el proyecto, una copia es tomada y almacenada en el directorio actual del proyecto. El efecto es exactamente el mismo a si hubiera creado esta clase y hubiese escrito todo su código fuente.

Una alternativa es agregar el código fuente de la nueva clase al directorio del proyecto desde fuera de BlueJ. La próxima vez que abra este proyecto, la clase será incluida en el diagrama del proyecto.

Llamando a main y a otros métodos estáticos

Resumen: Los métodos estáticos ( static ) pueden ser llamados desde el menú emergente de la clase.

Abra el proyecto hello del directorio examples. La única clase existente en el proyecto ( clase Hello ) define un método main estándar.

Haga clic derecho sobre la clase, y  verá que el menú de la clase incluye no solamente el constructor de la clase, sino también el método estático main. puede ahora llamar directamente el método main desde este menú ( sin crear primero un objeto, como se esperaría para un método estático ).

Todos los métodos estáticos pueden ser llamados como el descrito anteriormente. El método estándar main espera un arreglo de String como argumento. puede pasar un arreglo de String, usando la sintaxis estándar de Java para arreglos de constantes. Por ejemplo, podría pasar

{«one», «two», «three»}

( incluyendo las llaves ) al método. Pruébelo!

Nota al lado: En Java estándar, los arreglos de constantes no pueden ser utilizados como argumentos actuales para los llamados a métodos. Ellos sólo pueden ser usados como inicializadotes. En BlueJ, para habilitar llamados interactivos de los métodos estándar main, permitimos el paso de arreglos de constantes como parámetros.

Generando la documentación

Resumen: Para generar la documentación para un proyecto, seleccione Project Documentation del menú Tools.

 puede generar la documentación para su proyecto e.j. el formato estándar de javadoc desde BlueJ. Para hacer esto seleccione en el menú Tools – Project Documentation. Esta función generará la documentación para todas las clases en un proyecto desde el código fuente de las clases y abre un navegador web para mostrarlo.

también puede ver y generar la documentación para una clase directamente desde el editor de BlueJ. Para hacer esto, abra el editor y use el menú emergente en la barra de herramientas del editor. Cambie la selección de Implementation a Interface. Esto mostrará el estilo de documentaciónjavadoc ( la interfaz de la clase ) en el editor.

Trabajando con librerías

Resumen: La API estándar de clases de Java puede ser visualizada seleccionando Help – Java Standard Libraries.

Frecuentemente, cuando escribe un programa en Java, tiene que referirse a las librerías estándar de Java. puede abrir un navegador web mostrando la documentación de la API del JDK seleccionando Help – Java Standard Classes del menú ( si está en línea en internet ).

La documentación del JDK también puede ser instalada y usada localmente ( fuera de línea ). Los detalles son explicados en la sección de ayudas del sitio web de BlueJ.

Creando objetos desde librerías de clases

Resumen: Para crear objetos desde la librería de clases, use Tools – Use Library Class.

BlueJ también ofrece una función para crear objetos desde clases que no son parte de su proyecto, sino definidas en una librería. puede, por ejemplo, crear objetos de la clase String o ArrayList. Esto puede ser muy útil para una experimentación rápida con estos objetos de librerías.

puede crear un objeto de librería seleccionando Tools – Use Library Class… del menú. Una ventana de diálogo emerge solicitando que sea digitado un nombre de clase completamente válido, tal como java.lang.String. ( Note que debe digitar el nombre completamente válido, esto es, el nombre incluyendo los nombres de los paquetes que contienen la clase. )

El campo de entrada tiene asociado un menú emergente mostrando las clases usadas recientemente. Después que un nombre de clase ha sido entrado, presionando Enter se mostrarán todos los constructores y métodos estáticos de esta clase en una lista en la ventana de diálogo. Cualquiera de estos constructores o métodos estáticos ahora pueden ser invocados seleccionándolos desde esta lista.

La invocación procede como cualquier otro constructor o llamado a un método.

Sólo los resúmenes

1. Para abrir un proyecto, seleccione Open del menú Project.

2. Para crear un objeto, seleccione un constructor del menú emergente de la clase.

3. Para ejecutar un método, selecciónelo del menú emergente del objeto.

4. Para editar el archivo fuente de una clase, haga doble clic sobre su icono de clase.

5. Para compilar una clase, haga clic en el botón Compile en el editor. Para compilar un

proyecto, haga clic en el botón Compile en la ventana de proyecto.

6. Para obtener ayuda sobre un mensaje de error del compilador, haga clic en el símbolo de

interrogación cercano al mensaje de error.

Haciendo un poco más…

7. Un objeto puede ser pasado como un parámetro a un llamado de un método haciendo clic

sobre el icono del objeto.

8. La inspección de un objeto permite un simple traceo, verificando el estado interno de ese

objeto.

Creando un Nuevo proyecto

9. Para crear un proyecto, seleccionar New… del menú Project.

10. Para crear una clase, haga clic el botón New Class y especifique el nombre de la clase.

11. Para crear una flecha, haga clic en el botón de la flecha y arrastre la flecha en el diagrama, o

sólo escriba el código fuente en el editor.

12. Para remover una clase, seleccione la función Remove de su menú emergente.

13. Para remover una flecha, seleccione Remove del menú Edit y haga clic en la flecha.

Traceando

14. Para configurar un punto de parada ( breakpoint ), haga clic en el área del punto de parada a

la izquierda del texto del editor.

15. Para ir paso a paso a través del código, use los botones Step y Step Into del traceador.

16. Inspeccionar variables es fácil – ellas son mostradas automáticamente en el traceador.

17. Detener y terminar ( Halt – Terminate ) pueden ser utilizados para detener una ejecución

temporal o permanentemente.

Creando aplicaciones de escritorio

18. Para crear una aplicación de escritorio, use Project – Export…

Creando applets

19. Para ejecutar un applet, seleccione Run Applet del menú emergente del applet.

20. Para crear un applet, haga clic en el botón New Class y seleccione Applet como el tipo de

clase.

21. Paquetes no BlueJ pueden ser abiertos con el comando Project: Open Non BlueJ….

22. Las clases pueden ser copiadas en un proyecto desde afuera utilizando el comando

Add Class from File… .

23. Los métodos estáticos ( static ) pueden ser llamados desde el menú emergente de la clase.

24. Para generar la documentación para un proyecto, seleccione Project Documentation del

menú Tools.

25. La API estándar de clases de Java puede ser visualizada seleccionando Help – Java

Standard Libraries.

26. Para crear objetos desde la librería de clases, use Tools – Use Library Class.

BlueJ es una herramienta para escribir, compilar y ejecutar programas.

El proceso se podría llamar prueba y error y es ideal para comenzar a programar. A medida que se aprende  lo básico los errores ya no se repiten. BlueJ nos permitirá crear diferentes tipos de programa. Comenzaremos por crear «clases».  Para grabar las clases en el sistema operativo utilizaremos la extensión .java.  Cuando se las compilan y no tienen error se crean los archivos «.Class» que serán los que la  máquina virtual «java.exe» ejecute.  El estilo de escritura de programas en Java es CamelCase que permite escribir nombres de identificadores legibles y lo más  breve posible.  Una clase se inicia con las líneas import si es que se va a usar en la clase algún componente de otra clase o paquete externo al proyecto.

Ejemplo

Import java.util.Scanner;

Sigue la declaración de la clase, indicando que es pública para ser accedida por otras clases de  otra aplicación.

Import java.util.Scanner;

public class ComparaEnteros {

Siguen las declaraciones de los atributos y de los métodos, en este caso sigue la declaración  de un método particular, «main» que es el  punto de inicio de una aplicación.

Import java.util.Scanner;

public class ComparaEnteros {

public static void main(String [ ] args) {

Se han abierto dos llaves, una para la clase y otra para el primer método, si hubiera otro método, se debe cerrar una y declarar el nuevo método. Al final debe cerrarse la clase.

Import java.util.Scanner;

public class ComparaEnteros {

public static void main(String [ ] args) {

/* todo lo que contiene main */

} //cerramos main

public static void otroMetodo(String [ ] args) {

/* todo lo que contiene otroMetodo */

} //cerramos otroMetodo

} //final de la clase ComparaEnteros

Estructura secuencial

Scanner entrada = new Scanner(System.in);

int numero1, numero2;

System.out.print(«Escriba el primer entero: «);

numer02 = Entrada.nextlnt();

Estructura repetitiva

while (contadorEstudiantes <= 1 0)

{

System.out.print(«Escriba el resultado «);

Resultado= entrada.nextlnt();

}

Estructura de bifurcación

if (resultado = =1)

aprobados = aprobados + 1;

else

reprobados = reprobados + 1;

No te detengas, sigue avanzando

Aquí tienes un propósito para este 2024 que debes considerar seriamente: si has querido mejorar tus habilidades en hacking, Ciberseguridad y programación ahora es definitivamente el momento de dar el siguiente paso. ¡Desarrolla tus habilidades aprovechando nuestros cursos a un precio increíble y avanza en tu carrera!

Universidad Hacking. Todo en Ciberseguridad. Curso Completo

Aprende Hacking Ético y Ciberseguridad sin necesitar conocimientos Previos. Practica Hacking Ético y Ciberseguridad aquí

Calificación: 4,6 de 5 (2.877 calificaciones) 15.284 estudiantes Creado por Alvaro Chirou • 1.800.000+ Enrollments Worldwide

Lo que aprenderás

  • Aprende Seguridad informática
  • Te enseñare Hacking Ético
  • Veremos Ciberseguridad
  • La base principal del Hacking, Redes
  • Programación (Python) Necesitaras saber Python para, Hacking con Python
  • Te enseñare Análisis de Malware, además haremos laboratorios, practicas y ejecutaremos Malware para que veas su comportamiento.
  • Te enseñare a reforzar tu Privacidad y Anonimato
  • Aprenderás una de las herramientas mas populares por excelencia en el mundo del Hacking, Metasploit
  • Es importante que aprendas Seguridad informática Mobile ya que usamos nuestro celular como una PC
  • Veremos también el top 10 de Owasp Web
  • Veremos también el top 10 de Owasp mobile
  • Veremos también el top 10 de Owasp API
  • Ante la demanda del mercado, te enseñare Seguridad informática para empresas
  • Veras también la suit de herramientas de seguridad informática en un sistema operativo, Kali Linux
  • Herramientas de hacking para el celular en Termux
  • Seguridad informática en WordPress
  • Análisis de trafico en Wireshark

El Hacking Ético y Ciberseguridad es Transversal a todo lo que sea Tecnología.

¿Esto que significa?

Que hoy más que nunca, se necesitan personas capacitadas en este rubro para trabajar.

Por esa razón cree esta formación profesional para compartirte mis conocimientos y experiencia en la materia y puedas iniciar en este mundo del Hacking Ético y Ciberseguridad.

Te voy a estar acompañando en el proceso de aprendizaje, donde si estas empezando desde 0, sin conocimientos previos, no es un impedimento ya que iniciaremos como si no supieras nada de la materia.

Y si sos una persona con conocimientos, podrás iniciar directamente en el nivel más avanzado o en el que tu elijas.

Como en todos mis cursos en udemy, tendrás muchísima practica para que materialices lo que vas aprendiendo.

Empieza a aprender ya mismo!

Aprende con nuestros más de 100 cursos que tenemos disponibles para vos

¿Te gustaría enterarte de cuando lanzamos descuentos y nuevos cursos?

Sobre los autores

Álvaro Chirou

Yo soy Álvaro Chirou, tengo más de 20 Años de experiencia trabajando en Tecnología, eh dado disertaciones en eventos internacionales como OWASP, tengo más de 1.800.000 estudiantes en Udemy y 100 formaciones profesionales impartidas en la misma. Puedes serguirme en mis redes:

Laprovittera Carlos

Soy Laprovittera Carlos. Con más de 20 años de experiencia en IT brindo Educación y Consultoría en Seguridad de la Información para profesionales, bancos y empresas. Puedes saber más de mi y de mis servicios en mi sitio web: laprovittera.com y seguirme en mis redes:

¿Quieres iniciarte en hacking y ciberseguridad pero no sabes por dónde empezar? Inicia leyendo nuestra guia gratuita: https://achirou.com/como-iniciarse-en-ciberseguridad-y-hacking-en-2024/ que te lleva de 0 a 100. Desde los fundamentos más básicos, pasando por cursos, recursos y certificaciones hasta cómo obtener tu primer empleo.

SIGUE APRENDIENDO GRATIS CON NUESTRAS GUIAS

Cómo Iniciarse en Hacking y Ciberseguridad en 2024

Curso Gratis de Programación

Curso Gratis Linux – Capitulo 1 – Introducción a Linux

Curso Gratis de Redes – Capitulo 1 – Tipos de redes y servicios

Como iniciarse en TRY HACK ME – Complete Beginner #1

OSINT #1 Más de 200 Search Tools