Capítulo No.
2
Entorno de Programación y Estructura del Programa Java
Prof. Nidhia García
2. Introducción a la Programación Java.
2.1. Origen.
Java es un lenguaje de programación orientado a objetos desarrollado por Sun
Microsystems a principio de los años 90's.
El lenguaje se denominó inicialmente Oak (por un roble que había fuera de la oficina de
James Gosling - director del proyecto), luego pasó a denominarse Green tras descubrir que
Oak era ya una marca comercial registrada para adaptadores de tarjetas gráficas y
finalmente se renombró a Java.
Los objetivos de Gosling eran implementar una máquina virtual y un lenguaje con una
estructura y sintaxis similar a C++. No está claro si es un acrónimo o no, aunque algunas
fuentes señalan que podría tratarse de las iniciales de sus diseñadores: James Gosling,
Arthur Van Hoff, y Andy Bechtolsheim. Otros abogan por el siguiente acrónimo, Just Another
Vague Acronym ("sólo otro acrónimo ambiguo más"). La hipótesis que más fuerza tiene es
la de que Java debe su nombre a un tipo de café disponible en la cafetería cercana, de ahí
que el icono de java sea una taza de café caliente. Un pequeño signo que da fuerza a esta
teoría es que los 4 primeros bytes (el número mágico) de los archivos .class que genera el
compilador, son en hexadecimal, 0xCAFEBABE. A pesar de todas estas teorías, el nombre
fue sacado al parecer de una lista aleatoria de palabras.
Los objetivos de Gosling eran implementar una máquina virtual y un lenguaje con una
estructura y sintaxis similar a C++.
Java ha experimentado numerosos cambios desde la versión primigenia JDK 1.0, así como
un enorme incremento en el número de clases y paquetes que componen la biblioteca
estándar.
2.2. Características de JAVA.
Java es un lenguaje de programación de propósito general orientado a objetos desarrollado
por Sun Microsystems. También se puede decir que Java es una tecnología que no sólo se
reduce al lenguaje sino que además provee de una máquina virtual Java que permite
ejecutar código compilado Java, sea cual sea la plataforma que exista por debajo;
plataforma tanto hardware, como software (el sistema operativo que soporte ese hardware).
Entorno de Programación y Estructura del Programa Java – Prof. Nidhia García Pág. No. 1
El apoyo a esta tecnología viene dado por la gran cantidad de fabricantes que apoyan esta
especificación de máquina virtual.
Sun Microsystems describe al lenguaje Java de la siguiente manera:
• Simple.
• Orientado a Objetos.
• Tipado estáticamente.
• Distribuido.
• Interpretado.
• Robusto.
• Seguro.
• De Arquitectura Neutral.
• Multihilo.
• Con Recolector de Basura (Garbage Collector).
• Portable.
• De Alto Rendimiento, sobre todo con la aparición de hardware especializado y mejor
software.
• Dinámico.
Todas ellas son importantes, sin embargo cabe destacar tres, que son las que han
proporcionado tanto interés por el lenguaje: la portabilidad, el hecho de que sea de
arquitectura neutral y su simplicidad. Java ofrece toda la funcionalidad de los lenguajes
potentes, pero sin las características menos usadas y más confusas de éstos.
Java elimina muchas de las características de otros lenguajes como C++, para mantener
reducidas especificaciones del lenguaje y añadir características muy útiles como el
recolector de basura. No es necesario preocuparse de liberar memoria, el recolector se
encarga de eliminar la memoria asignada. Gracias al recolector, sólo hay que preocuparse
de crear los objetos relevantes del sistema ya que él se encarga de destruirlos en caso de
no ser reutilizados.
Java reduce en un 50% los errores más comunes de programación con lenguajes como C
y C++. Entre las características más "indeseables" de C++ que se han evitado en el diseño
de Java destacan: ficheros de cabecera, aritmética de punteros, sobrecarga de operadores,
estructuras, uniones, conversión implícita de tipos, etc.
Entorno de Programación y Estructura del Programa Java – Prof. Nidhia García Pág. No. 2
2.3. Ambiente de desarrollo de JAVA.
2.3.1. Entornos para Crear Aplicaciones en el lenguaje Java.
[Link]. IDE (lntegrated Development Environment - Entorno de Desarrollo
Integrado).
Un entorno de desarrollo integrado o entorno de desarrollo interactivo, en
inglés lntegrated Development Environment (lDE), es una aplicación informática
que proporciona servicios integrales para facilitarle al desarrollador o
programador el desarrollo de software.
Normalmente, un IDE consiste de un editor de código fuente, herramientas de
construcción automáticas y un depurador. La mayoría de los IDE tienen
autocompletado inteligente de código (lntelliSense). Algunos IDE contienen un
compilador, un intérprete, o ambos.
Existen varios IDE para el desarrollo de aplicaciones en lenguaje Java como por
ejemplo NetBeans y Eclipse.
NetBeans: es un Entorno de Desarrollo Integrado para la creación de
aplicaciones en Java para escritorio, móvil o web. También permite
desarrollarlas en HTI\ILS (HTML, JavaScript y CSS) y dispone de herramientas
para programadores en PHP, C y C++. NetBeans es un IDE desarrollado en
Java y de código abierto. Cualquier desarrollador de aplicaciones puede
descargarlo de forma gratuita.
Eclipse: es el entorno de desarrollo integrado más conocido para Java.
También permite el desarrollo de proyectos en otro tipo de lenguajes como C,
C++ o PHP. Como cualquier lDE, permite el desarrollo de software y
aplicaciones en escritorio y dispositivos móviles como tabletas y teléfonos
inteligentes. Dispone de interfaz gráfica de usuario y herramientas para llevar a
cabo numerosas funciones.
[Link]. JDK.
Java Development Kit o (JDK), es un software que provee herramientas de
desarrollo para la creación de programas en Java. Puede instalarse en una
computadora local o en una unidad de red. Se trata de un conjunto de
herramientas (programas y librerías) que permiten desarrollar (compilar,
ejecutar, generar documentación, etc.) programas en lenguaje Java.
Entorno de Programación y Estructura del Programa Java – Prof. Nidhia García Pág. No. 3
Es un software gratuito que contiene todo aquello que requiere tu máquina para
trabajar con el lenguaje, tanto la JVM (Java Virtual Machine) como las librerías
para realizar programas de Java, desde los más básicos hasta los más
complejos y específicos.
Existen versiones del JDK para prácticamente todos los Sistemas Operativos y
existen también distintos programas comerciales.
2.3.2. Tipos de Plataformas de Desarrollo en Java.
Java, como la mayoría de los lenguajes, ha sufrido cambios a lo largo de su historia.
Además, en cada momento han coexistido distintas versiones o distribuciones de Java
con distintos fines. Actualmente puede considerarse que el Java vigente se denomina
Java 2 existen 3 distribuciones principales de Java 2, con ciertos aspectos comunes y
ciertos aspectos divergentes.
[Link]. J2SE.
Java 2 Standard Edition o Java Standard Edition. Orientado al desarrollo de
aplicaciones cliente / servidor. No incluye soporte a tecnologías para Internet.
Es la base para las otras distribuciones Java.
[Link]. J2EE.
Java 2 Enterprise Edition. Orientado a empresas y a la integración entre
sistemas. Incluye soporte a tecnologías para internet. Su base es J2SE.
[Link]. J2ME.
Java 2 Micro Edition. Orientado a pequeños dispositivos móviles (teléfonos,
tabletas, etc.).
2.3.3. Tipos de aplicaciones a desarrollar en Java.
[Link]. Aplicaciones de Consola.
Las aplicaciones son programas standalone de propósito general que
normalmente se ejecutan desde la línea de comandos del sistema operativo.
Con Java se puede realizar cualquier programa que normalmente se crearía
con algún otro lenguaje de programación.
Entorno de Programación y Estructura del Programa Java – Prof. Nidhia García Pág. No. 4
[Link]. Modo Gráfico (Swing, AWT).
Se entiende por modo gráfico toda aquella interfaz en computación que
involucre el uso de ventanas y el uso del mouse. Son aplicaciones o sistemas
que se ejecutan en ambientes gráficos o de tipo “ventanas”.
Para poder crear entornos gráficos en java es necesario importar dos librerías
las cuales dotan de varios componentes y soporte para gestionar la interacción
con el usuario. Las dos librerías son: awt y swing.
[Link]. Applets.
Los applets son pequeños programas que se incorporan en una página Web y
que por lo tanto, necesitan de un Navegador Web compatible con Java para
poder ejecutarse. A menudo los applets se descargan junto con una página
HTML desde un Servidor Web y se ejecutan en la máquina cliente.
Los applets son programas en java que se envían a una PC remota, donde esa
PC se encarga de compilarlo y ejecutarlo. El applet es enviado por un servidor
de páginas (web server) junto con la página correspondiente, cada vez que un
usuario se conecta al web server y requiere la página que contiene el applet.
Para el caso de applets estos se ejecutan dentro del browser o navegador de la
máquina remota que puede ser el Internet Explorer o Chrome. El browser del
cliente debe estar preparado para ejecutar applets teniendo actualizado el
navegador con la máquina virtual de java.
[Link]. Servlets.
Los servlets al contrario de los applets son programas que están pensados para
trabajar en el lado del servidor y desarrollar aplicaciones Web que interactúen
con los clientes.
Son programas en java que se ejecutan directamente en el servidor de páginas
o web server, que al ser invocado o llamado por una PC remota, el web server
compila y ejecuta el servlet; ya ejecutado se envían generalmente los
resultados a la máquina remota, estos resultados se mandan en forma de una
página HTML, para que la máquina remota los vea en su propio browser o
navegador.
Entorno de Programación y Estructura del Programa Java – Prof. Nidhia García Pág. No. 5
[Link]. JSP.
JSP (Java Server Pages), es una tecnología que combina código HTML y
código Java en un solo programa o aplicación. Cuando al web server le solicitan
un JSP, lo compila, lo convierte a servlet con todas las implicaciones que se
mencionaron anteriormente y envía los resultados a la PC remota que lo solicitó.
JSP ayuda a los desarrolladores de software a crear páginas web dinámicas
basadas en HTML y XML. JSP es similar a PHP, pero usa el lenguaje de
programación Java
[Link]. Móviles.
Definiremos como dispositivos móviles, a aquellos dispositivos, que por su
naturaleza física o virtual, puedan desplazarse de un lugar a otro conservando
sus parámetros de configuración y funcionalidad. En Java es posible desarrollar
estos tipos de aplicaciones para aparatos móviles.
2.4. Estructura General de una aplicación en Java.
2.4.1. Elementos básicos de la programación en Java.
[Link]. Comentarios.
Un comentario es un texto adicional que se añade al código para explicar su
funcionalidad, bien a otras personas que lean el programa, o al propio autor
como recordatorio. Los comentarios son una parte importante de la
documentación de un programa. Los comentarios son ignorados por el
compilador, por lo que no incrementan el tamaño del archivo ejecutable; se
pueden por tanto, añadir libremente al código para que pueda entenderse mejor.
La programación orientada a objetos facilita mucho la lectura del código, por lo
que lo que no se precisa hacer tanto uso de los comentarios como en los
lenguajes estructurados. En Java existen tres tipos de comentarios:
• Comentarios en una sola línea – se definen colocando antes del
comentario dos símbolos de diagonal: //.
• Comentarios de varias líneas – es un bloque de texto situado entre el
símbolo de comienzo del bloque /*, y otro de terminación del mismo */.
Entorno de Programación y Estructura del Programa Java – Prof. Nidhia García Pág. No. 6
[Link]. Identificadores.
Sirven para nombrar a los diversos elementos que constituyen el código
(variables, clases, interfaces, atributos, métodos, parámetros...). Deben cumplir
ciertas condiciones para ser válidos:
• Están formados por secuencia de letras, dígitos y los símbolos “_” y “$".
• No pueden coincidir con palabras reservadas de Java.
• No pueden comenzar por un dígito.
• Pueden tener cualquier longitud.
• Son sensibles a mayúsculas y minúsculas.
[Link]. Tipos de datos.
Un tipo de datos está formado por un conjunto de valores posibles o dominio, y
un conjunto de operaciones que se pueden localizar sobre los mismos.
Los tipos de datos básicos, nativos o primitivos de Java son: boolean, byte, int,
short, String, char, long, double, float, void.
[Link]. Variables / Constantes.
Las variables son elementos que permiten almacenar un valor de un tipo.
Deben ser declaradas previamente a su uso, indicando el tipo, el nombre
(identificador) y opcionalmente un valor inicial.
Las constantes son elementos que permiten almacenar un valor de un tipo,
que no podrá cambiar a lo largo de la ejecución del programa. Se declaran igual
que las variables, incluyendo la palabra reservada "final".
[Link]. Operadores y expresiones.
Los operadores son elementos que a partir de uno o varios operandos obtienen
un valor resultado o modifican el valor de alguno de los operandos.
Entorno de Programación y Estructura del Programa Java – Prof. Nidhia García Pág. No. 7
OPERADORES ARITMÉTICOS
OPERADORES RELACIONALES
OPERADORES LÓGICOS
OTROS
Otros
. Invocar método
(tipo) Conversión de tipo
[] Acceso a posición de array
Instanceof Pregunta si un objeto es de un tipo
new Crear objetos
_?_:_ Operador condicional ternario
= Asignación
Una expresión es un conjunto bien formado de constantes, variables y
operadores.
Entorno de Programación y Estructura del Programa Java – Prof. Nidhia García Pág. No. 8
Evaluar una expresión consiste en aplicar los operadores en el orden de
prelación establecido y obtener un valor de algún tipo. El tipo de una expresión
es el tipo del valor obtenido al evaluar la expresión.
Ejemplos: 3+8 → Tipo de la expresión: int
(3*a)==b → Tipo de la expresión: boolean
Para que sea una expresión correcta, "a" y
"b" deben ser variables numéricas.
[Link]. Jerarquía de operadores.
Existe un orden
de prelación entre
las operaciones.
[Link]. Sentencias de asignación.
Una asignación es una expresión que cambia el valor de la variable que se
escribe a la izquierda. El nuevo valor será el obtenido al evaluar la expresión
que se escribe a la derecha.
Ejemplo: a=3+9;
La operación de asignación junto a las operaciones aritméticas puede
escribirse de manera abreviada:
Entorno de Programación y Estructura del Programa Java – Prof. Nidhia García Pág. No. 9
2.5. Entrada y Salida en Java.
La entrada y salida en Java es uno de los conceptos más importantes y fundamentales al
momento de interactuar con el usuario de nuestro programa.
2.5.1. Salida con la clase System.
La salida de datos por pantalla es una de las funcionalidades fundamentales al
momento de desarrollar programas para usuarios, pues como buenos programadores
siempre debemos comunicarnos esa persona que usa nuestro programa e informarle
de todo lo que está sucediendo. La salida de datos nos permiten solicitar información
al usuario, pues sería difícil para adivinar qué es lo que esperamos que nos ingrese en
algún momento, así que básicamente no habría entrada de información si no hubiera
salida de datos por pantalla.
La salida de datos en Java es bastante sencilla pues basta con usar una línea de
código para hacerlo. Para mostrar datos por pantalla en nuestros programas Java.
Para mostrar texto por pantalla en Java no es necesario hacer uso de librerías
importadas ni similares, pues éstas y están incluidas en la librería [Link] que
siempre es importada por defecto. Para imprimir por pantalla, se usa la clase System,
el atributo out, y su método println() o print() así: [Link]() o
[Link](), notar que System es una clase y siempre debe ir con la "S"
mayúscula.
La entrada de datos en Java, a diferencia de otros lenguajes es un poco complicada
(no demasiado) y existen diferentes formas de hacerlo, unas más complejas que otras.
A continuación veremos dos maneras sencillas de leer datos para nuestro programa
en Java, veremos entonces dos formas de leer datos del usuario por teclado. La
primera usando las clases BufferedReader e InputStreamReader ambas de la librería
[Link] y la segunda con la clase Scanner de la librería java-util.
2.5.2. Entrada con BufferedReader e InputStreamReader.
La entrada de datos con estas dos clases se puede hacer en menos de tres líneas
según lo que necesitemos hacer, veremos cómo leer números y texto y las
particularidades de ambos casos al usar estas clases.
import [Link];
import [Link];
import [Link];
public class EntradaJava
{
public static void main(String[] args) throws IOException
{
Entorno de Programación y Estructura del Programa Java – Prof. Nidhia García Pág. No. 10
//Notar que readLine() nos obliga a declarar IOException
BufferedReader br = new BufferedReader(new InputStreamReader([Link]));
//Ya tenemos el "lector"
[Link]("Por favor ingrese su nombre");//Se pide un dato al usuario
String nombre = [Link](); //Se lee el nombre con readLine() que retorna
un String con el dato
[Link]("Bienvenido " + nombre + ". Por favor ingrese su edad");//Se
pide otro dato al
usuario
String entrada = [Link](); //Se guarda la entrada (edad) en una variable
//Nótese que readLine siempre retorna String y la clase BufferedReader...
//no tiene un método para leer enteros, así que debemos convertirlo.
int edad = [Link](entrada);//Se transforma la entrada anterior en
un entero
//Si el usuario ingresó solo números funcionará bien, de lo contrario generará
una excepción
[Link]("Gracias " + nombre + " en 10 años usted tendrá " + (edad
+ 10) + " años."); //Operacion numerica con la edad
}
}
Como pudimos ver en el código anterior, ha sido bastante sencillo obtener la entrada
del usuario y almacenar ese valor en una variable. El único "problema" es que
BufferedReader únicamente posee el método readLine() para leer la entrada y este
siempre retorna String, de modo que para obtener un número debemos leer primero
como String y luego enviarle dicho String al método parseInt() de la clase Integer. Hay
que ser muy cuidadosos con [Link]() pues si el usuario no ingreso un número
sino letras, se disparará una excepción que debemos controlar.
2.5.3. Lectura con Scanner.
La clase Scanner de la librería [Link] es también muy sencilla para obtener datos de
entrada del usuario, a diferencia de BufferedReader, Scanner si posee un método para
la lectura de números y para la lectura de texto que nos ayudarán a facilitar un poco
las cosas, veamos:
import [Link];
public class EntradaJava2
{
public static void main(String[] args)
{
Scanner sc = new Scanner([Link]); //Se crea el lector
[Link]("Por favor ingrese su nombre");//Se pide un dato al
usuario
Entorno de Programación y Estructura del Programa Java – Prof. Nidhia García Pág. No. 11
String nombre = [Link](); //Se lee el nombre con nextLine() que retorna
un String con el dato
[Link]("Bienvenido " + nombre + ". Por favor ingrese su edad");
//Se pide otro dato al
usuario
int edad = [Link](); //Se guarda la edad directamente con nextInt()
//Nótese que ya no hubo necesidad de usar parseInt() pues nextInt nos retorna
un entero directamente
[Link]("Gracias " + nombre + " en 10 años usted tendrá " + (edad
+ 10) + " años."); //Operacion numerica con la edad
}
}
Con este código hemos podido realizar la lectura de datos del usuario muy fácil, pues
ya no nos tuvimos que preocupar por el tipo de dato, solo debemos usar el método
adecuado según sea int, String, float, etc.
2.5.4. Manejo de Excepciones.
[Link]. Conceptos de Excepciones.
El tratamiento de excepciones en Java es un mecanismo del lenguaje que
permite gestionar errores y situaciones excepcionales.
Una excepción en Java (así como en otros muchos lenguajes de programación)
es un error o situación excepcional que se produce durante la ejecución de un
programa.
[Link]. Captura y Tratamiento de Errores.
Con los bloques try-catch podemos capturar y procesar una posible excepción,
evitando que el sistema se detenga sin necesidad cuando el motivo de esto
puede ser corregido fácilmente, la estructura básica es la siguiente:
try {
//bloque de código que vamos a procesar
} catch (excepcion) {
//tratamiento que se le da a la posible excepción
} finally {
//bloque de código que se ejecutará después de1 try o del catch
}
try: Aquí vamos a escribir todo el bloque de código que posiblemente llegue a
lanzar una excepción la cual queremos manejar, aquí va tanto el código como
llamados a métodos que puedan arrojar la excepción.
Entorno de Programación y Estructura del Programa Java – Prof. Nidhia García Pág. No. 12
En este bloque solo se detectará la primera excepción lanzada, hay que tener
en cuenta que por cada try se debe especificar un catch y/o un finally.
catch: en caso de que en el try se encuentre alguna excepción, se ingresa
automáticamente al bloque catch donde se encontrará el código o proceso que
realizar para controlar la excepción.
Se pueden especificar cualquier cantidad de catch de ser necesario, estos deben
ser ubicados después del try y antes del finally (en caso de que este último se
especifique), cada catch que se ponga debe manejar una excepcion diferente
(no se puede repetir) y el orden de estos depende de la jerarquía de herencia
que se tenga, ingresando al primer catch que pueda suplir la necesidad a
corregir, por ejemplo.
finally: Este bloque es opcional, lo pondremos si queremos ejecutar otro
proceso después del try o el catch, es decir, siempre se ejecutará sin importar
que se encuentre o no una excepción.
2.5.5. Salida con JOptionPane.
El método showMessageDialog es un método especial de la clase JOptionPane, el
cual se conoce como método static. Generalmente los métodos static se llaman
utilizando el nombre de la clase, seguido de un punto ( . ) y el nombre del método, por
ejemplo:
[Link](null, "¡Bienvenido a la programación en
Java!\n Fulanito de tal");
El método showMessageDialog de la clase JOptionPane se utiliza para mostrar un
cuadro de dialogo que contiene un mensaje y/o variable. Este método requiere de dos
argumentos y cuando un método requiere varios argumentos, estos se separan con
comas ( , ). Por ahora el primer argumento será la palabra clave null y el segundo
argumento "¡Bienvenido a la programación en Java!\n Fulanito de Tal” es la cadena a
mostrar en el cuadro de dialogo. El primer argumento ayuda a la aplicación en Java a
determinar en donde se va a colocar el cuadro de dialogo, cuando el primer argumento
es null, el cuadro de dialogo aparece en el centro de la pantalla de la computadora.
Es posible agregar otros argumentos como el título de la ventana y el ícono que la
acompaña:
[Link](null, "¡Bienvenido a la programación en
Java!\n Fulanito de tal", “INICIO”, JOptionPane.INFORMATION_MESSAGE);
Entorno de Programación y Estructura del Programa Java – Prof. Nidhia García Pág. No. 13
En el caso de que se quiera mostrar el valor de variables se separaría del mensaje con
el símbolo de +:
[Link](null, "El valor de la suma es:" + sum,
“Respuesta”, JOptí[Link] MESSAGE);
Los componentes de la GUI facilitan la entrada de datos al usuario del programa y la
presentación de los datos de salida.
2.5.6. Entrada con JOptionPane.
Generalmente muchos programas ofrecen una interfaz gráfica de usuario (GUI) o
los cuadros de diálogo (también llamados diálogos) que son ventanas en las que los
programas muestran mensajes importantes a los usuarios del programa.
Java contiene una clase llamada JOptionPane que nos permite producir cuadros de
dialogo previamente empaquetados, los cuales permiten a los programas mostrar
ventanas que contengan mensajes. A estas ventanas se les conoce como diálogos de
mensaje.
Un cuadro de dialogo es un objeto de interfaz gráfica de usuario (GUl), pero ¿cuál es
la diferencia entre mostrar la salida en consola y en interfaz gráfica? En consola solo
podemos mostrar texto y en una interfaz gráfica de usuario podemos mostrar no solo
texto, si no también varios elementos gráficos como botones, barras, casillas de
verificación, menús, cuadros de texto e imágenes.
EI cuadro de dialogo de entrada en Java permite al usuario introducir datos en el
programa. para esto se utiliza el método showlnputDialog de la clase JOptionPane
para desplegar el cuadro de diálogo de entrada, el cual muestra un mensaje de
confirmación y un icono de signo de pregunta esperando la entrada del usuario. Al
hacer clic en el botón Aceptar se procede el valor introducido.
El siguiente programa utiliza el método showlnputDialog para permitir al usuario
introducir un valor para utilizarlo en el programa. En este caso pide el nombre del
usuario y responde con un diálogo de mensaje que contiene un saludo y el nombre
que el usuario haya introducido.
//Entrada básica con un cuadro de dialogo
import [Link];
public class Ejemplo
{ public static void main (String args [])
{ //Pide al usuario que escriba su nombre:
Entorno de Programación y Estructura del Programa Java – Prof. Nidhia García Pág. No. 14
String nombre = [Link]("Cuál es su nombre?");
//Muestra el mensaje para dar la bienvenida al usuario con su nombre:
[Link](null, "Bienvenido (a) " + nombre) ;
}
}
2.5.7. Ventanas de Confirmación con JOptionPane.
Muchas veces necesitamos mensajes de confirmación, estos mensajes son ventanas
de diálogo que, por ejemplo, nos piden que aceptemos o cancelemos una acción o
evento que se va a realizar. Una de estas herramientas son las ventanas de
confirmación de la clase JOptionPane. Por ejemplo:
[Link](null, “Realmente desea salir de Hola Swing?",
“Confirmar salida”, JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);
El argumento JOptionPane.YES_NO_OPTION es el tipo de botones que van a
aparecer, para esta parte de la sentencia existen los siguientes tipos:
- YES_NO_OPTION
- DEFAULT_OPTION o CLOSED_OPTION
- YES_NO_CANCEL_OPTION
Entorno de Programación y Estructura del Programa Java – Prof. Nidhia García Pág. No. 15
- OK_CANCEL_OPTION, muestra esta ventana:
Todas estas ventanas de confirmación retornan un valor numérico correspondiente a
lo opción que se seleccionó, la primera posición va a ser cero, la segunda uno y así
sucesivamente, por ejemplo, si en la ventana de YES_NO_OPTION, seleccionamos
que Sí, este lo que nos devuelve es un cero, si seleccionamos que No, nos estaría
devolviendo un uno, si seleccionamos la equis devolverá un menos uno ( -1 ).
Entorno de Programación y Estructura del Programa Java – Prof. Nidhia García Pág. No. 16