Está en la página 1de 26

Programacin Bsica con Java

Al finalizar el captulo, el alumno podr:

Reconocer y aplicar un cdigo de programacin Java.

Temas

1.

IDE Java

2.

Consola

3.

Depuracin

4.

Programas fuentes y compilados

5.

Instrucciones repetitivas

6.

Instrucciones condicionales

7.

Instrucciones de transferencia

8.

Combinaciones

9.

Excepciones

Programa Java Fundamentals Developer

Programacin Bsica con Java

1.

38

IDE Java

1. IDE Java

El IDE NetBeans es una herramienta para programadores, pensada para escribir,


compilar, depurar y ejecutar programas. Est escrito en Java, pero puede servir para
cualquier otro lenguaje de programacin. Existe adems un nmero importante de
mdulos para extenderlo. Adems, NetBeans es un producto libre y gratuito sin
restricciones de uso.
NetBeans soporta el desarrollo de todos los tipos de aplicacin Java (J2SE, web, EJB
y aplicaciones mviles). Entre sus caractersticas se encuentra un sistema de proyectos
basado en ant, control de versiones y refactoring. Asimismo, extiende las
caractersticas existentes del Java EE (incluyendo Soporte a Persistencia, EJB 3 y
JAX-WS). Adicionalmente, el NetBeans Enterprise Pack soporta el desarrollo de
aplicaciones empresariales con Java EE 5, incluyendo herramientas de desarrollo
visuales de SOA, herramientas de esquemas XML, orientacin a web servicies (for
BPEL) y modelado UML.
El NetBeans C/C++ Pack soporta proyectos de C/C++, mientras el PHP Pack, soporta
PHP 5.
Todas las funciones del IDE son provistas por mdulos. Cada mdulo provee una
funcin bien definida, tales como el soporte de Java, edicin o soporte para el sistema
de control de versiones. NetBeans contiene todos los mdulos necesarios para el
desarrollo de aplicaciones Java en una sola descarga permitiendo al usuario comenzar
a trabajar inmediatamente.
NetBeans se puede descargar del siguiente enlace:
http://netbeans.org/downloads/

Programacin Bsica con Java

1.1

39

Instalacin de NetBeans
La opcin de descarga es All, y el archivo descargado es netbeans-7.4-mlwindows.exe. Cuando se encuentre en el disco, solo debe dar doble clic sobre l y se
podr ver el siguiente dilogo.

Para seleccionar la instalacin del Servidor Apache Tomcat 7.0.41, se deber hacer
clic en el botn Customize.
A continuacin, se debe realizar la secuencia de las siguientes pantallas por defecto:

Programacin Bsica con Java

40

Luego, se pulsa en el botn OK y se retornar al cuadro de dilogo anterior, donde ya


se tendr seleccionado Apache Tomcat 7.0.41.

Despus, se pulsa en el botn Next, y se aceptan los trminos de licencia del


NetBeans.

Programacin Bsica con Java

41

Programacin Bsica con Java

42

El dilogo de finalizacin es el siguiente (clic en Install).


En este punto se ha terminado con las opciones de instalacin y por lo tanto, el
programa procede con la instalacin.
Cuando NetBeans ha sido instalado, se notar un grupo ms (NetBeans) en Todos
los Programas. Ejecute NetBeans 7.4 para probar.

Programacin Bsica con Java

43

Luego, puede apreciar la ventana de bienvenida de NetBeans que tiene una serie de
links para visitar documentacin, proyectos demostrativos y otros, como se muestra a
continuacin.

Programacin Bsica con Java

2.

44

Consola

2. Consola

En Java, todo cdigo


generalmente, se
desarrolla en una
clase (class Hola)

Un programa bsico en Java podra ser el siguiente:

Donde:
La lnea 1 indica el paquete (carpeta) donde se guardar el archivo.
La lnea 3 define una clase pblica (Hola) y ser el nombre del archivo.
La lnea 5 declara el mtodo main por donde empezar la ejecucin del
programa.
La lnea 7 imprimir en consola: Hola mundo

Este programa ser guardado con el nombre Hola.java, el nombre del archivo debe ser
completamente igual al nombre de la clase (Hola).
Una clase es un prototipo que define las variables y los mtodos comunes a un cierto
tipo de objetos. Las clases son las plantillas, de las que luego, se pueden crear
mltiples objetos del mismo tipo. La clase define las variables y los mtodos comunes a
los objetos de ese tipo, pero luego, cada objeto tendr sus propios valores y
compartirn las mismas funciones.

Programacin Bsica con Java

45

El mtodo main es el punto de ejecucin de una aplicacin que puede constar de


muchos archivos, pero solo uno de ellos tendr al mtodo main.
Para este ejemplo la sentencia System.out.println("Hola a todos!"); imprimir un
mensaje en la consola.
Para ejecutar el programa, se deber hacer clic derecho sobre el cdigo y seleccionar
Run File.

2.1

Ingreso de datos por consola


No existe instruccin directa en Java para el ingreso de datos, pues el lenguaje asume
que el dispositivo lo proveer. En este caso, para el ingreso de datos por consola, se
tiene a partir del JDK 1.5 la clase Scanner. El siguiente programa ilustra sus usos:

El programa solicita un nombre que despus de ingresarlo y pulsar <enter>, muestra


un mensaje de bienvenida con el nombre ingresado.

Programacin Bsica con Java

3.

46

Depuracin

3. Depuracin

La depuracin es un aspecto importante en programacin, pues con ella, se detecta


fcilmente donde est el error o resultado no esperado.
Para depurar, primero se agrega un break point a una lnea del programa, esto se
logra dando clic en el nmero de lnea.

Luego, se hace clic derecho sobre el cdigo de programa y del men flotante que se
muestra, seleccione Debug File. La ejecucin del programa se detiene en la lnea que
contiene el break point, la cual se pinta de verde; adems, se activan los siguientes
toolbar:

Programacin Bsica con Java

47

Estos botones, segn el orden en el que se muestran, ejecutarn las siguientes


acciones:
1.
2.
3.
4.
5.

Step Over: permite avanzar a la siguiente lnea.


Step Over Expression: avanza sobre partes de la lnea .
Step Into: permite ingresar al cdigo del mtodo del cual se est invocando.
Step Out: permite salir del cdigo del mtodo del cual se est invocando.
Run to Cursor: hace un salto de ejecucin hasta donde est el cursor.

Tambin, se puede activar la ventana Variables (men Window / Debugging /


Variables) para poder apreciar el valor que van tomando las variables conforme se van
ejecutando las lneas del programa.

Programacin Bsica con Java

4.

48

Programas fuentes y compilados

4. Programas fuentes y compilados

La carpeta de instalacin de Java (jdk1.7.0_05 / bin) contiene todas las utilidades y


bibliotecas del lenguaje Java. El IDE de NetBeans se comunica en todo momento con
estas utilidades.
Por ejemplo:

Para compilar el programa (Hola.java), NetBeans utiliza a javac.exe, el cual


devuelve un archivo .class (Hola.class)
Para interpretar un archivo .class, NetBeans utiliza a java.exe el cual lo
muestra en consola, solo si tiene el mtodo main.

Asimismo, en la carpeta bin,, se encuentran otras herramientas de Java, con las que
se podr compilar, ejecutar, documentar, empaquetar y muchas otras tareas, propias
del entorno.
Con respecto al primer programa Hola.java, para llegar a ejecutarlo y verlo en consola,
se deber pasar por el proceso siguiente:

Programacin Bsica con Java

5.

49

Instrucciones repetitivas

5. Instrucciones repetitivas

Instrucciones repetitivas de Java


while
do
for
Ejecutan un bloque de sentencias tantas veces como su condicional arroje
true.

Una instruccin repetitiva ejecuta un bloque de sentencias, tantas veces como la


condicin que lleve como argumento, devuelva true. Este bloque de sentencias se
conoce como proposicin, la cual se ejecuta hasta que la expresin de su condicin
devuelva false.
Java cuenta con 3 instrucciones repetitivas:

while
do
for

Si se desea mayor informacin oficial de las sentencias repetitivas de Java, navegar el


siguiente URL:
http://docs.oracle.com/javase/tutorial/java/nutsandbolts/flow.html

5.1

Instruccin While
Tiene una condicin de entrada, es decir, si desde el inicio la condicin arroja false,
entonces nunca se ejecutar el grupo de sentencias (proposicin); en caso contrario,
ejecuta el grupo de sentencias tantas veces hasta que la condicin devuelva false.
Un ejemplo sencillo con while podra ser solicitar un valor entero (que en Java puede
tener hasta 10 dgitos) y que luego, imprima cuantos dgitos tiene dicho valor entero.
El siguiente cdigo muestra una posible solucin:

Programacin Bsica con Java

50

Para contar dgitos, se obtiene el ltimo digito y se contabiliza; luego, al valor se le


resta el ltimo digito y luego, se le quita dividiendo entre 10 volviendo a evaluar el valor
hasta que ste sea 0 (cero).

5.2

Instruccin Do
Tiene una condicin de salida, es decir, de todas maneras ejecuta la proposicin y
sigue ejecutndola hasta que la condicin arroje false.
Un ejemplo sencillo con do podra ser, solicitar N valores hasta que se ingrese el valor
0 (cero) y luego, imprimir cuantos valores fueron solicitados por el cliente sin considerar
el ltimo valor ingresado (cero).
El siguiente cdigo muestra una posible solucin:

Programacin Bsica con Java

51

Como se puede apreciar, se estn solicitando valores que se contabilizan, mientras


ste sea diferente de cero. Cuando el valor es cero, termina imprimiendo la cantidad de
los valores ingresados menos 1, ya que el ltimo, que es cero, no debe considerarse.

5.3

Instruccin For
Es tal vez la ms compleja de las instrucciones repetitivas, por presentar 3 argumentos:
inicializacin, control y actualizacin. La proposicin se ejecuta tantas veces como
el control lo permita con el valor true. Por otro lado, el argumento inicializacin, solo
se ejecuta una sola vez al inicio de la interaccin, mientras que la actualizacin
tantas veces como la proposicin.
Un ejemplo sencillo con For podra ser, imprimir la tabla de multiplicar del 1 al 12.
Para una posible solucin se tiene que usar un for dentro de otro for, a esto se conoce
como anidamiento de instrucciones.

Programacin Bsica con Java

52

El siguiente cdigo ilustra la solucin con un anidamiento de for:

La proposicin del primer for (i) es la caja de lneas discontinuas. La proposicin del
segundo for (j), ms interno, es la salida de la tabla de multiplicar solicitada.
La salida ser la siguiente:
1*1=1
1*2=2
.
.
.
2*1=2
2*2=4
.
.
.
12 * 1 = 12
12 * 2 = 24
.
.
.
12 * 12 = 144

Programacin Bsica con Java

6.

53

Instrucciones condicionales

6. Instrucciones condicionales

Instrucciones condicionales de Java


if
else
Switch
Permiten tomar decisiones en funcin a la condicin que llevan como
argumento.

Una instruccin condicional es aquella que, en funcin a un resultado (true o false) de


una condicin, ejecutar una proposicin para luego, seguir con la ejecucin secuencial
de las sentencias del algoritmo.
Java cuenta con 3 instrucciones condicionales:

if
else
switch

Si se desea mayor informacin oficial de las sentencias condicionales de Java, se


puede navegar en el siguiente URL:
http://docs.oracle.com/javase/tutorial/java/nutsandbolts/flow.html

6.1

Instrucciones if / else
Son condiciones que pueden trabajar juntas; sin embargo, la instruccin else es
opcional, mientras que if es obligatoria. La proposicin a ejecutar por alguna de ellas,
est en funcin al valor devuelto por el resultado de la expresin que lleva como
condicin la instruccin if, que puede ser true (ejecuta la proposicin de if) o false (no
ejecuta la proposicin de if, pero s la de else si hubiese).
Un ejemplo sencillo con if / else podra ser, solicitar dos valores para luego, imprimir el
mayor de ellos sin son diferentes o el mensaje que son iguales si lo fueran.

Programacin Bsica con Java

54

El siguiente cdigo muestra una posible solucin:

Se puede apreciar en esta solucin, que se tiene anidamiento de la instruccin if,


porque hay 3 posibles respuestas:
1. Que x1 sea al mayor.
2. Que x2 sea el mayor.
3. Que ambos valores sean iguales.

6.2

Instruccin switch
Esta instruccin condicional tiene una sola condicin, pero varios casos de respuesta
en funcin a su resultado de coincidencia y con cada uno de sus casos, ejecutar la
proposicin correspondiente.
La instruccin switch se activa en el momento que alguno de los casos coincida con el
valor de la expresin, entonces a partir de all, ejecuta todos los casos. Una forma de
evitar que los dems casos se ejecuten, tambin puede ser utilizando una instruccin
de transferencia (break).

Programacin Bsica con Java

55

Un ejemplo sencillo con switch podra ser, solicitar un nmero de da de la semana (de
0 a 6, siendo 0 el domingo), para luego imprimir a qu da de la semana corresponde
dicho nmero ingresado.
El siguiente cdigo ilustra la solucin usando switch:

En este caso, si el nmero (x) ingresado es 0 (cero), se imprime domingo; si es 1,


lunes, y as sucesivamente. Adems, si el nmero ingresado no pertenece al rango [0,
6] se imprimir nmero incorrecto.

Programacin Bsica con Java

7.

56

Instrucciones de transferencia

7. Instrucciones de transferencia

Instrucciones de transferencia en Java


break
continue

Permiten hacer saltos de varias sentencias hacia arriba o hacia abajo.

Se ejecutan dentro de una instruccin repetitiva, excepto break con switch.

Una instruccin de transferencia es aquella que permite saltar varas lneas de


sentencias hacia arriba o hacia abajo del algoritmo de programacin.
Para poder ser usada debe estar dentro de una instruccin condicional, que a su vez
est dentro de una instruccin repetitiva; excepto la instruccin break que puede
usarse dentro de una instruccin swith para saltar varios casos de comparacin hasta
el final de la instruccin (ver formato de swith, salto es break).
Java cuenta con 2 instrucciones transferencia.

break
continue

Si se desea mayor informacin oficial de las sentencias condicionales de Java, navegar


en el siguiente URL:
http://docs.oracle.com/javase/tutorial/java/nutsandbolts/flow.html

Programacin Bsica con Java

7.1

57

Instruccin break
Esta instruccin permite, literalmente, romper la interaccin de una instruccin repetitiva.
La imagen siguiente muestra una instruccin repetitiva que tiene varias sentencias y
entre ellas, hay una condicional (if) que si su condicin es true, entonces se ejecuta
break; por lo tanto, en ese momento la ejecucin salta al final del bloque de la repetitiva
haciendo que sta termine.

repetitiva {
sentencia1;
sentencia2;
if (...) break;
sentencia3;

sentenciaN;
}

Cuando se ejecuta la instruccin break, automticamente la instruccin repetitiva


termina, ya que break salta a la sentencia despus del bloque de la repetitiva.
Un ejemplo sencillo con break podra ser, solicitar varios valores hasta que se ingrese un
valor mltiplo de 7 y el algoritmo termina imprimiendo dicho valor.
El siguiente cdigo ilustra la solucin usando break:

Programacin Bsica con Java

58

Solo cuando el valor es mltiplo de 7, su mdulo con 7 da como resultado cero,


entonces se ejecuta break haciendo que el algoritmo termine imprimiendo el mensaje
que el valor es mltiplo de 7.

7.2

Instruccin continue
Esta instruccin a diferencia de break, hace que la instruccin repetitiva siga con su
interaccin, pero todas las sentencias que estuviesen despus de la instruccin
continue no se ejecutaran. La siguiente imagen ilustra su efecto:

repetitiva {
sentencia1;
sentencia2;
if (...) continue;
sentencia3;

No se ejecutan
sentenciaN;
}
Cuando se ejecuta continue, las sentencias de 3 a N son ignoradas, no se ejecutan,
como si no estuviesen all.
Un ejemplo sencillo con continue podra ser, imprimir los mltiplos de 7, de 2 dgitos
([10, 99]).
El siguiente diagrama ilustra la solucin usando break.

Programacin Bsica con Java

8.

59

Combinaciones

8. Combinaciones

La combinacin de instrucciones permite mostrar la habilidad del programador para


desarrollar ptimos algoritmos, es decir, pocas lneas y de ejecucin rpida.

Las instrucciones de control se agrupan en las siguientes categoras:

Repetitivas
- while
- do
- for
Condicionales
- if
- else
- switch
De Transferencia
- break
- continue

A continuacin, se muestra un ejemplo que ilustra dicha combinacin.

Programacin Bsica con Java

Ingrese un valor entero e imprima cuntos dgitos pares e impares tiene.

60

Programacin Bsica con Java

9.

61

Excepciones

9. Excepciones

Para controlar el flujo de un programa en Java, como se ha visto hasta ahora, puede
hacerse mediante las ya conocidas sentencias estructuradas (if, while, break). Pero
Java va mucho ms all, mediante una tcnica de programacin denominada
excepciones.
Mediante las excepciones se podrn evitar posibles errores o peligros en el cdigo, as
como, avisar a otros objetos de una condicin anormal de ejecucin, a fin de tomar las
medidas necesarias.
El siguiente cdigo es un fragmento de una clase que ser creada en el siguiente
captulo; se tiene la funcin entero que lo que hace es validar si el contenido de una
cadena puede formar un entero, retornando true si es posible.

La lnea 9 intenta convertir a entero x la cadena s. Si lo logra retorna true;


caso contrario, false.
La lnea 9 se ejecuta si es que no se puede convertir la cadena en entero. Su
argumento NumberFormatException se activa, si la cadena no tiene el
formato de un nmero.

Programacin Bsica con Java

62

La sentencia try catch, puede tener varios catch para atender varios posibles
problemas que puedan presentarse, siendo los primeros catch ms especficos
y los siguientes ms generales.
try {
// Cdigo con posibles problemas
} catch (NumberFormatException e) {
// Cdigo para solucionar valor no bien formado

} catch (Exception e) {
// Cdigo para solucionar otro posible problema
}

Tambin, se puede usar un formato con finally, cuyo cdigo se ejecuta de todas
maneras, despus de terminar try o despus de terminar catch.
try {
// Cdigo con posibles problemas
} catch (NumberFormatException e) {
// Cdigo para solucionar valor no bien formado
} catch (Exception e) {
// Cdigo para solucionar otro posible problema
} finally {
// Cdigo que se ejecuta de todas maneras
}