Documente Academic
Documente Profesional
Documente Cultură
a. Menú Inicio
b. Todos los programas
c. NetBeans
d. NetBeans IDE 8.1
2. En el IDE, abra el menú File (Archivo) y elija New Project (Nuevo Proyecto), como se
muestra en la siguiente figura.
3. En la página Choose Project (Seleccionar proyecto) del asistente New Project (Proyecto
Nuevo), en Categories (Categorías) seleccione la categoría Java y en Projects (Proyectos)
seleccione Java Application (Aplicación Java), como se muestra en la siguiente figura, y luego
haga clic en el botón Next (Siguiente).
4. En la página Name and Location (Nombre y ubicación) del asistente, haga lo siguiente
(como se muestra en la figura a continuación):
En el campo Project Name (Nombre del proyecto) ingrese el nombre del proyecto
(por ejemplo: Bienvenidos).
En el campo Create Main Class (Crear clase principal) muestra el nombre del
paquete y el nombre de la clase que se generará bienvenidos.Bienvenidos. La nomenclatura
de java establece que los nombres de paquete comienzan con letra minúsculas y los nombres
de clase con letra mayúscula
Ing. Nieves Ascanio H.
Lenguaje de programación III Unidad I _ Fundamentos de programación Java
La ventana Projects (Proyectos) que contiene una vista del árbol de los componentes del
proyecto incluyendo el archivo fuente Bienvenidos.java, bibliotecas de las que depende su
código, y así sucesivamente.
Una clase principal es aquella que contiene un método main(). Cuando se ejecuta la aplicación la
ejecución comienza en el método main().
Como se dejó seleccionada la casilla Create Main Class (Crear clase principal), el IDE ha
creado la clase Bienvenidos, la cual contiene el método main (principal).
Ing. Nieves Ascanio H.
Lenguaje de programación III Unidad I _ Fundamentos de programación Java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package bienvenidos;
/**
*
* @author equipo
*/
public class Bienvenidos {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
}
}
Si se requiere enlazar paquetes de la biblioteca de Java con el código fuente, las sentencias para
importarlos se colocan debajo de la sentencia:
package bienvenidos;
Ejemplo:
package bienvenidos;
import javax.swing.JOptionPane;
/**
*
* @author equipo
*/
public class Bienvenidos {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
JOptionPane.showMessageDialog(null, "Bienvenidos a Java");
System.exit(0);
}
}
6. Guardar el cambio eligiendo en el menú File (Archivo) la opción Save (Guardar) o pulse (Ctrl +
S).
7. Compilar el archivo fuente eligiendo en el menú Run (Ejecutar), la opción Build Project
(Bienvenidos) o pulse F11
La ventana Output (Salida) abre y despliega una salida similar a lo que usted ve en la figura
siguiente:
En la ventana Salida aparecen los errores. Para ir al punto del código donde está el error se hace
doble clic en el hipervínculo que describe el error.
Al hacer click en el botón Aceptar, la ventana Salida mostrará el contenido que se muestra en la
figura siguiente:
El software en Java se organiza en paquetes (package). Un paquete puede contener otros paquetes y
clases. Una clase contiene métodos.
Ejemplo:
Paquete javax
Paquete lang
Paquete sql
Paquete swing
Clase JButton
Clase JOptionPane
Método showInputDialog
Método showMessageDialog
Método showConfirmDialog
El nombre de una clase puede contener varias palabras sin espaciar. La primera letra de cada palabra
va en mayúscula y las letras restantes en minúscula.
El nombre de un método puede contener varias palabras sin espaciar. La primera palabra va en letras
minúscula, la primera letra de la segunda y demás palabras en mayúsculas y las letras restantes en
minúsculas.
Ing. Nieves Ascanio H.
Lenguaje de programación III Unidad I _ Fundamentos de programación Java
import javax.swing.JOptionPane;
Colocando esta sentencia en la cabecera del programa, se pueden llamar todos los métodos de la
clase JOptionPane indicando sólo NombreClase.nombreMetodo()
El lenguaje en sí mismo toma mucha de su sintaxis de C y C++, pero tiene un modelo de objetos
más simple y elimina herramientas de bajo nivel, como punteros.
Sun Microsystems proporciona una implementación GNU General Public License de un compilador
Java (que genera el bytecode) y una máquina virtual Java (que interpreta el bytecode), conforme a
las especificaciones del Java Community Process, aunque la biblioteca de clases que se requiere
para ejecutar los programas Java no es software libre.
Tipos de datos
El tipo de dato describe el tipo de información que se almacenará en una variable de memoria, los
tipos de datos de Java se clasifican en numéricos, boleanos y caracter
Declaración de variables
Se puede declarar varias variables en una misma sentencia separándolas con coma ( , )
Se puede declarar e iniciar una variable asignándole una constante o expresión
Las constantes decimales son consideradas por Java tipo double, por lo que para iniciar una variable
float se termina la constante con la letra f (mayúscula o minúscula) o se utiliza el cast (float) para
convertir double a float
Las constantes char van entre comillas simples
Las constantes String van entre comillas dobles
Entrada de datos
Para ingresar datos se puede utilizar el método showInputDialog, el cual muestra un diálogo con
una caja de texto
2. Invocar al método showInputDialog(), de la clase JOptionPane del paquete swing, con una
sentencia que debe tener la siguiente sintaxis:
Ejemplos
El último ejemplo permite extraer el primer carácter del String y guardarlo en una variable tipo char.
Manejo de excepciones
Java implementa excepciones para facilitar la construcción de código robusto. Cuando ocurre un
error en un programa, el código que encuentra el error lanza una excepción, que se puede capturar y
recuperarse de ella. Java proporciona muchas excepciones predefinidas.
try{
// Código donde puede ocurrir una excepción
}
catch(Exception e){
// Código que se ejecuta al capturar la excepción
}
Este método muestra un cuadro mensaje con botones, en los que el usuario puede hacer clic para
indicar su elección.
Donde
Ejemplo
respuesta = JOptionPane.showConfirmDialog(null, "¿Desea salir?", "Salida", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);
Salida de datos
2. Invocar al método showMessageDialog, de la clase JOptionPane del paquete swing, con una
sentencia que debe tener la siguiente sintaxis:
JOptionPane.showMessageDialog(ComponentePadre, "Mensaje","Título",Tipo);
Donde:
Ejemplo:
JOptionPane.showMessageDialog(null, nombre + " obtuvo " + nota + " puntos", "Información", JOptionPane.INFORMATION_MESSAGE);
Nota: nombre es un objeto de la clase String y nota es una variable tipo int en los cuales
previamente se guardaron los datos, solicitados con el método JOptionPane.showInputDialog(),
Operadores
Sentencias selectivas
Sentencia if
Sintaxis:
if (expresión boleana){
sentencia 1 ;
}
else{
sentencia 2;
}
Ejemplo
package sentencia_if ;
import javax.swing. JOptionPane;
public class MayorNumero {
public static void main(String[] args) {
/* Programa que determina el mayor de dos número
Si los números son iguales muestra un mensaje */
int numero1, numero2, mayor;
numero1 = Integer.parseInt(JOptionPane.showInputDialog("Ingrese el primer número"));
numero2 = Integer.parseInt(JOptionPane.showInputDialog("Ingrese el segundo número"));
if (numero1 == numero2){
JOptionPane.showMessageDialog(null, "Números iguales");
}
else{
if (numero1 > numero2){
mayor = numero1;
}
else{
mayor = numero2;
}
JOptionPane.showMessageDialog(null, "El mayor es " + mayor);
}
System.exit(0); //Libera la memoria usada por la aplicación
}
}
Sentencia switch
Sintaxis:
switch (variable){
case CONSTANTE_1 :
sentencia;
break;
case CONSTANTE_2:
sentencia;
break;
default :
sentencia;
En la sentencia switch, se compara una variable con una lista de constantes. Si se encuentra una
coincidencia se ejecutan las sentencias que se asocian con la constante hasta que se encuentra un
break;, y luego el control pasa a la sentencia que sigue a la llave que cierra el switch. Si no se
encuentra ninguna coincidencia se ejecutan las sentencias que siguen a la cláusula default:, si ésta
no existe, el control pasa a la sentencia que sigue a la llave que cierra el switch.
case 1:
case 2:
sentencia ;
break ;
Ejemplo
/* Programa que calcula el descuento según la forma de pago: Efectivo y tarjeta débito 30%,
Cheque y cesta ticket 20%, Tarjeta crédito 10% */
package sentencia_switch;
import javax.swing. JOptionPane;
public class Descuento {
public static void main(String[] args) {
int formaPago, unidades;
float precio, montoVenta, descuento = 0, montoCobrar;
formaPago = Integer.parseInt(JOptionPane.showInputDialog("Ingrese la forma de pago \n1.
Efectivo\n2. T. Débito\n3. Cheque\n4. Cesta ticket\n5. T. Crédito"));
unidades = Integer.parseInt(JOptionPane.showInputDialog("Ingrese cantidad de unidades",0));
precio = Float.parseFloat(JOptionPane.showInputDialog("Ingrese el precio",0));
montoVenta = unidades * precio;
switch (formaPago){
case 1:
case 2:
descuento = montoVenta * 0.30f;
break;
case 3:
case 4:
descuento = montoVenta * 0.20f;
break;
case 5:
descuento = montoVenta *0.10f;
break;
default :
JOptionPane.showMessageDialog(null, "Valor no válido para forma de pago");
System.exit(0);
}
montoCobrar = montoVenta - descuento;
JOptionPane.showMessageDialog(null, "Monto venta: " + montoVenta + "\nDescuento: " +
descuento + "\nMonto a cobrar: "+ montoCobrar );
System.exit(0); //Libera la memoria usada por la aplicación
}
}
Sintaxis:
if (expresión boleana){
sentencia;
sentencia;
else{
sentencia;
La computadora evalúa las expresiones booleanas desde arriba descendiendo, cuando la evaluación
de una expresión booleana resulta verdad ejecuta la(s) sentencia(s) asociadas y salta las expresiones
booleanas restantes. Si ninguna expresión booleana es verdadera ejecuta las sentencias que siguen al
último else, si éste no existe el control se transfiere a la siguiente sentencia.
Esta sentencia es útil para evaluar una variable que toma un valor de una lista de valores o una
variable que satisface sólo un caso de varios posibles casos.
Ejemplo:
package sentencia_if_else_if;
import javax.swing. JOptionPane;
public class Descuento {
public static void main(String[] args) {
/* Programa que calcula el descuento según la forma de pago Efectivo y
tajeta débito 30%. Cheque y Cesta ticket 20%. Tarjeta crédito 10% */
int formaPago, unidades;
float precio, montoVenta, descuento = 0, montoCobrar;
formaPago = Integer.parseInt(JOptionPane.showInputDialog("Ingrese la forma de pago \n1.
Efectivo\n2. T. Débito\n3. Cheque\n4. Cesta ticket\n5. T.Crédito"));
unidades = Integer.parseInt(JOptionPane.showInputDialog("Ingrese cantidad de unidades",0));
precio = Float.parseFloat(JOptionPane.showInputDialog("Ingrese el precio",0));
Sentencia while
Sintaxis:
La expresión boleana que controla el ciclo es evaluada, si resulta true (verdad) se ejecutan las
sentencias del ciclo. Cada vez que se ejecutan las sentencias del ciclo, el control es transferido al
inicio de la sentencia while y de nuevo se evalúa la expresión boleana, si resulta false (falsa) el
control es trasferido a la sentencia siguiente. Por lo tanto, mientras la expresión boleana sea
verdadera se repiten las sentencias del ciclo.
Ejemplo
package sentencia_while;
import javax.swing. JOptionPane;
public class MenorEdad {
public static void main(String[] args) {
/* Programa que calcula la menor edad en un grupo de personas */
int edad, menorEdad = 110, respuesta = 0;
while (respuesta == 0){
edad = Integer.parseInt(JOptionPane.showInputDialog("Ingrese la edad",0));
if (edad < menorEdad){
menorEdad = edad;
}
respuesta = JOptionPane.showConfirmDialog(null, "¿Otra persona?", "Continuar",
JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE);
}
JOptionPane.showMessageDialog(null,"La menor edad procesada fue " + menorEdad);
System.exit(0);
}
}
Sentencia do …while
Sintaxis:
do {
sentencia ;
sentencia ;
Las sentencias del ciclo se ejecutan la primera vez. Luego se evalúa la expresión booleana que
controla el ciclo, si el resultado es verdad se transfiere el control al inicio de la sentencia do, si el
resultado es falso el control se transfiere a la siguiente sentencia.
Esta sentencia es apropiada para validar el valor de un dato. La sentencia de entrada se ejecuta, se
evalúa el dato, se repite la entrada mientras el dato no sea válido.
Ejemplo
package sentencia_do_while;
import javax.swing. JOptionPane;
public class MayorNota {
public static void main(String[] args) {
/* Programa que calcula la mayor nota en un grupo de estudiantes */
int nota, mayorNota = 0, respuesta = 0;
while (respuesta == 0){
do{
nota = Integer.parseInt(JOptionPane.showInputDialog("Ingrese la nota ",0));
} while (nota < 0 || nota > 20);
if (nota > mayorNota){
mayorNota = nota;
}
respuesta = JOptionPane.showConfirmDialog(null, "¿Otro estudiante?", "Continuar",
JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE);
}
JOptionPane.showMessageDialog(null,"La mayor nota procesada fue " + mayorNota);
System.exit(0);
}
}
Sentencia for
Sintaxis:
sentencia ;
sentencia ;
La inicialización, es una sentencia de asignación para dar un valor inicial a la variable (contador)
que controla el ciclo. La expresión booleana evalúa al contador inicialmente y cada vez que se
ejecutan la(s) sentencia(s) del ciclo, si el resultado es verdad el control se transfiere a las sentencias
del ciclo, si es falso se transfiere a la siguiente sentencia. El incremento o decremento, determina la
variación del contador cada vez que se ejecuta el ciclo.
La sentencia for, se usa cuando se requiere repetir la ejecución de una o más sentencias un número
determinado de veces, es decir, cuando se desea hacer un ciclo determinado.
Ejemplo
package sentencia_for;
import javax.swing. JOptionPane;
public class Multiplicacion {
public static void main(String[] args) {
// Program que calcula el producto de dos números positivos usando sumas sucesivas
int k, x, y, p = 0;
do{
x = Integer.parseInt(JOptionPane.showInputDialog("Ingrese el primer factor", 0));
}while (x < 0);
do{
y = Integer.parseInt(JOptionPane.showInputDialog("Ingrese el segundo factor", 0));
}while (y < 0);
for (k = 1; k <= y; k++){
p = p + x;
}
JOptionPane.showMessageDialog(null, x + " * " + y + " = " + p);
System.exit(0);
}
}
Sentencia break
Sentencia continue
Etiqueta
Una etiqueta es un identificador seguido de dos puntos (:). Las etiquetas se utilizan para
identificar ciclos anidados. Se utiliza con las sentencias break y continue para indicar de que ciclo
se desea salir (break) o que ciclo se repetirá (continue).
package numero_primo;
import javax.swing. JOptionPane;
public class NumeroPrimo {
public static void main(String[] args) {
/*Este programa muestra los números primos menores que 100
Un número primo tiene dos divisores la unidad y el mismo */
int x, numero = 1, cd;
String numerosPrimo = "Numeros primos \n";
rango:
while (true){
cd = 0; //cantidad de divisores
siguienteNumero:
for (x = 1; x <= numero; x++){
if (numero % x == 0){
cd ++;
if (cd > 2){
break siguienteNumero; //el número no es primo
}
}
} //fin for siguienteNumero:
if (cd <= 2){
numerosPrimo += numero + "\n";
}
numero ++;
if (numero < 100){
continue rango;
}
else {
break rango;
}
} //fin while rango:
JOptionPane.showMessageDialog(null, numerosPrimo);
System.exit(0);
}
}
En el ejemplo anterior se utilizaron etiquetas para mostrar el modo de usarlas, pero en este ejemplo,
si se eliminan las etiquetas el código funcionaría igualmente, ya que un break, envía el control
después del ciclo que lo contiene y un continue vuelve al inicio del ciclo que lo contiene.