You are on page 1of 62

INICIACIN A JAVA

M
D
_
U
D
x
x
x
x
x
x
_
V
(
1
0
)
U
n
iv
e
r
s
id
a
d
E
s
p
.
d
o
t
1
Introduccin a Java
M
0
8
5
_
0
1
_
V
(
0
1
)

M
D
_
U
D
x
x
x
x
x
x
_
V
(
1
0
)
U
n
iv
e
r
s
id
a
d
E
s
p
.
d
o
t
M
D
_
U
D
x
x
x
x
x
x
_
V
(
1
0
)
U
n
iv
e
r
s
id
a
d
E
s
p
.
d
o
t
1


Unidad didctica 1
INTRODUCCIN A JAVA
NDICE
MOTIVACIN........................................................................................ 4
PROPSITOS ....................................................................................... 5
1. QU ES JAVA?............................................................................... 6
1.1. HISTORIA ................................................................................. 6
1.2. PLATAFORMA DE DESARROLLO Y EJECUCIN............................... 7
2. INTRODUCCIN A LA PROGRAMACIN............................................. 11
2.1. ESTRUCTURA DE UN PROGRAMA JAVA ...................................... 11
2.2. TIPOS DE DATOS ..................................................................... 14
2.3. OPERADORES......................................................................... 17
2.3.1. Nmeros enteros............................................................................ 17
2.3.2. Nmeros reales .............................................................................. 18
2.3.3. Booleanos....................................................................................... 18
2.3.4. Orden en los operandos................................................................. 18
2.3.5. Expresiones aritmtico-lgicas ...................................................... 20
2.4. CONVERSIONES DE TIPO DE DATOS.......................................... 22
2.4.1. Casting ........................................................................................... 22
3. ESTRUCTURAS DE CONTROL........................................................... 25
3.1. ESTRUCTURAS DE SELECCIN.................................................. 25
3.1.1. Estructura if .................................................................................... 25
3.1.2. Estructura if-else ............................................................................ 26
3.1.3. Operador condicional ..................................................................... 27
3.1.4. Estructura switch............................................................................ 27
3.2. ESTRUCTURAS ITERATIVAS....................................................... 29
3.2.1. Estructura while.............................................................................. 29
3.2.2. Estructura do-while ........................................................................ 30

Unidad didctica 1
INICIACIN A JAVA
2
3.2.3. Estructura for .................................................................................. 31
3.2.4. Uso de las estructuras de repeticin.............................................. 32
4. PROCEDIMIENTOS/FUNCIONES....................................................... 34
4.1. CLUSULA STATIC .................................................................. 34
4.2. PROCEDIMIENTOS................................................................... 35
4.3. FUNCIONES............................................................................ 35
4.4. CONTROL DE ACCESO A PROCEDIMIENTOS/FUNCIONES.............. 37
5. PAQUETES..................................................................................... 39
5.1. CMO USAR LOS PAQUETES .................................................... 40
5.2. NOMBRES DE PAQUETES ......................................................... 40
6. INSTALACIN DE ECLIPSE .............................................................. 42
6.1. LA PRIMERA APLICACIN EN ECLIPSE........................................ 43
6.2. DEBUGGING........................................................................... 47
6.3. ABRIR UN PROYECTO DE LA PLATAFORMA ................................. 48
6.4. COMANDOS DE TECLADO TILES .............................................. 49
7. ESTRUCTURAS DE ALMACENAMIENTO ............................................ 51
7.1. ARRAYS................................................................................. 51
7.1.1. Declaracin..................................................................................... 51
7.1.2. Creacin ......................................................................................... 52
7.1.3. Inicializacin ................................................................................... 52
7.1.4. Acceso a los valores....................................................................... 53
7.1.5. Tamao de un array........................................................................ 53
7.2. ARRAYS N-DIMENSIONALES ..................................................... 54
7.2.1. Declaracin y creacin ................................................................... 54
7.2.2. Acceso a los valores....................................................................... 54
7.2.3. Tamao del array............................................................................ 55
7.2.4. Array de dos dimensiones no rectangulares .................................. 55
CONCLUSIONES................................................................................. 57
RECAPITULACIN .............................................................................. 58


Unidad didctica 1
INICIACIN A JAVA
4
MOTIVACIN
Dispondrs de las mejores herramientas para tu formacin.


Esta unidad nos va a ofrecer un acercamiento a Java, donde estudiaremos
cmo surgi este lenguaje de programacin y cmo fue fruto de la casualidad
de un grupo de ingenieros que trabajaban en otro proyecto relacionado con los
electrodomsticos.
Adems, aprenderemos la gran potencia de Java gracias a que ya se cre con
la intencin de: Programa una vez y ejecuta donde quieras. Esto quiere decir,
que un programador puede crear la aplicacin que quiera y no se tiene que pre-
ocupar en qu ordenador se va a ejecutar, ya que corre de la misma manera en
cualquier plataforma, gracias a la filosofa del uso de una mquina virtual.
Esta unidad tambin comprende la sintaxis bsica de Java donde se aprendern
todos los elementos bsicos para poder hacer programas con este lenguaje.
5


Unidad didctica 1
INTRODUCCIN A JAVA
PROPSITOS
Los objetivos que se plantean con esta unidad son los siguientes:
Aprender cmo surgi Java y la filosofa que sigue.
Conocer las ventajas que tiene Java respecto a otros lenguajes gracias
a la ejecucin de programas a travs de su maquina virtual.
Aspectos generales de la programacin en Java.
Conocimiento de la estructura de sus programas y la sintaxis de pro-
gramacin.

Unidad didctica 1
INICIACIN A JAVA
6
1. QU ES JAVA?
1.1. HISTORIA
Java surgi en 1991 cuando un grupo de ingenieros de Sun Microsystems trataron
de disear un nuevo lenguaje de programacin destinado a electrodomsticos. La
reducida potencia de clculo y memoria de los electrodomsticos llev a desarrollar
un lenguaje sencillo capaz de generar un cdigo de tamao muy reducido.
Desarrollaron un cdigo neutro que no dependa del tipo de electrodomstico,
el cual se ejecutaba sobre una mquina hipottica o virtual denominada Java
Virtual Machine (JVM). Era la JVM la que interpretaba el cdigo neutro convir-
tindolo a cdigo particular de la CPU utilizada. A pesar de los esfuerzos reali-
zados por sus creadores, ninguna empresa de electrodomsticos se interes
por el nuevo lenguaje.
Como lenguaje de programacin para computadores, Java se introdujo a finales
de 1995. La clave fue la incorporacin de un intrprete Java en la versin 2.0 del
programa Netscape Navigator, produciendo una verdadera revolucin en Inter-
net. Java 1.1 apareci a principios de 1997, mejorando sustancialmente la pri-
mera versin del lenguaje. Java 1.2, ms tarde rebautizado como Java 2, naci
a finales de 1998. Gracias a la comunidad (Java Community Process), Sun ha
controlado las especificaciones, el desarrollo y evolucin del lenguaje.

Java Community Process:
Permite a aquellas personas que quieran involucrarse en con-
tribuir en la definicin de futuras versiones y caractersticas de
la plataforma Java.

7


Unidad didctica 1
INTRODUCCIN A JAVA
Al programar en Java no se parte de cero. Cualquier aplicacin que se desarro-
lle hace uso de un gran nmero de clases preexistentes. Algunas de ellas las ha
podido hacer el propio usuario, otras pueden ser comerciales, pero siempre hay
un nmero muy importante de clases que forman parte del propio lenguaje (el
API o Application Programming Interface de Java).

API de Java:
El API de Java contiene un montn de servicios que facilitan el
desarrollo de programas en Java. Esta ordenado en paquetes
lgicos en funcin de la tarea para la que ha sido desarrollada
y que facilitar al programador cuando este desarrollando un
programa.

1.2. PLATAFORMA DE DESARROLLO Y EJECUCIN
La plataforma de ejecucin de Java no es un lenguaje, sino una plataforma de
desarrollo de programas que consta de:
Un lenguaje de programacin llamado Java, igual que la plataforma.
Un conjunto de libreras estndar que se incluyen con la plataforma y
que deben existir en cualquier entorno con Java.
Estas bibliotecas comprenden: colecciones, swing, acceso a base de
datos, Applets, API de red, etc.
Un conjunto de herramientas para el desarrollo de programas:
Compilador a cdigo intermedio con extensin .class y llamado
bytecodes. Tambin incluye el generador de documentacin, el
depurador de programas en Java, etc.
Una mquina virtual que es un entorno de ejecucin para poder ejecu-
tar los programas en cdigo de bytes.
La plataforma de Java se puede utilizar desde distintos sistemas operativos,
ejecutndose en cada uno de ellos de acuerdo con el hardware correspondien-
te. Viendo este esquema debemos de recordar el tema cero, donde hablbamos
de los compiladores y como transforman cdigo fuente en bytecodes para ser
portados a cualquier sistema operativo.

Unidad didctica 1
INICIACIN A JAVA
8

Figura 1. Distintos sistemas desde los que se utiliza la plataforma Java
Los pasos para desarrollar un programa y obtener la ejecucin de un programa
seguira los pasos vistos en la figura anterior y que describimos a continuacin:

Bytecodes:
Es un lenguaje intermedio entre el cdigo fuente y el cdigo
mquina. Esto permite la independencia de la plataforma y fa-
cilitar su interpretacin.
A la mquina virtual solo le quedar ajustar estos bytecodes a
la mquina donde se est ejecutando.


Desarrollar el programa fuente
Para desarrollar el programa fuente utilizaremos un entorno de desarro-
llo que nos permita trabajar con Java. Los archivos fuentes tienen la es-
tructura nombre.java, y el nombre de este archivo debe de ser el
mismo que el nombre de la clase.
9


Unidad didctica 1
INTRODUCCIN A JAVA
Compilacin
El siguiente paso es la compilacin del programa utilizando un compi-
lador que nos facilitar el entorno donde estemos desarrollando nuestro
programa. Existe una manera para compilar utilizando la lnea de co-
mandos con una herramienta llamada javac y escribiendo la siguiente
lnea: javac nombre.java.
Durante el proceso de compilacin se comprueba que lo que se ha es-
crito es correcto en Java y se traduce a otro lenguaje, denominado
cdigo de bytes (bytecode). Si durante la compilacin se encuentran
errores, el entorno avisar de los problemas detectados y el punto
dnde se han encontrado para poder corregirlos. Si en la compilacin
no se detecta ningn error se genera un fichero .class, con el mismo
nombre de la clase. Un ejemplo sera nombre.class.
Ejecucin del programa
Tras la compilacin se ejecuta el programa y se comprueba si hace lo
que se haba previsto. Si no es as, volveramos a ejecutar el mismo
proceso, editando el programa fuente, compilando otra vez el fichero y
ejecutando el programa.
Para el desarrollo de nuestros programas existen distintos programas comercia-
les. La compaa Sun, creadora de Java, distribuye gratuitamente el Java(tm)
Development Kit (JDK). Se trata de un conjunto de programas y libreras que
permiten desarrollar, compilar y ejecutar programas en Java.
Cuando un programador se pone a desarrollar un programa, se dar cuenta de
que el mayor tiempo de desarrollo se destina a la deteccin y correccin de
errores. Por ello las herramientas que utilicemos para nuestros desarrollos in-
corporarn la posibilidad de poner puntos de interrupcin en las lneas de nues-
tro programa, para que cuando ejecutemos la aplicacin se detenga justo en
ese punto y nos permita hacer el seguimiento lnea por lnea de lo que va suce-
diendo en nuestro programa y ver los valores que van tomando nuestras varia-
bles (denominado debugger). Existe tambin una versin reducida del JDK, de-
nominada JRE (Java Runtime Environment) destinada nicamente a ejecutar
cdigo Java (no permite compilar).
Los IDEs (Integrated Development Environment), tal y como su nombre indica,
son entornos de desarrollo integrados. Estos entornos integrados reducen nues-
tro tiempo de desarrollo ya que nos facilitan de forma grfica posibilidades como:
Escribir el cdigo Java, compilarlo y ejecutarlo a travs de botones en
vez de tener que trabajar con sentencias en MsDos.
Nos permite realizar un Debug de nuestra aplicacin grficamente fren-
te al JDK que es a travs de consola.
Incluyen componentes ya desarrollados y nosotros solo tenemos que
seleccionarlos, arrastrarlos y utilizarlos en nuestra aplicacin.

Unidad didctica 1
INICIACIN A JAVA
10
Tambin podemos destacar algunos inconvenientes como ficheros ms pesa-
dos que los basados en clases estndar e incompatibilidad de plataformas.
Para el desarrollo de los ejercicios de nuestra asignatura utilizaremos el IDE
Open Source Eclipse:
http://www.eclipse.org/.
11


Unidad didctica 1
INTRODUCCIN A JAVA
2. INTRODUCCIN A LA PROGRAMACIN
2.1. ESTRUCTURA DE UN PROGRAMA JAVA
Un programador debe utilizar de forma inteligente y lgica los elementos que le
ofrece el lenguaje de programacin para crear un programa que resuelva un
problema. Ya vimos las diferentes tcnicas en el tema 0 para poder resolver
efectivamente un problema.
En el siguiente programa de ejemplo puedes ver un programa muy sencillo es-
crito en Java. Este programa escribe en la pantalla el texto Hola mundo.

/ ** Pr ogr ama en J ava que escr i be un t ext o en l a pant al l a. */
public class Pr i mer aApl i caci on {
public static void mai n( St r i ng[ ] ar gs) {
Syst em. out . pr i nt l n( Hol a mundo. " ) ;
}
}

En este ejemplo se pueden ver algunos de los elementos que se van a utilizar
siempre que se escribe un programa en Java:
Comentario
Siempre debemos poner un comentario para describir qu hace ese
programa. El comentario del programa empieza con /** y acaba con */.
Tambin podremos comentar una sola lnea usando dos barras //.

Unidad didctica 1
INICIACIN A JAVA
12
Nombre de clase
La primera lnea del programa despus del comentario define una clase
que se llama PrimeraAplicacion. La definicin de la clase empieza en el
carcter abre llave { y termina en el carcter cierra llave }. Todo lo
encerrado entre las llaves define mbito de la clase. Para establecer
una simetra con nuestros programas de pseudocdigo este sera el
nombre del programa. Dicho nombre tiene que representar claramente
cual es la finalidad.
Mtodo principal
A continuacin, se escribe el mtodo main (). Todos los programas en
Java deben tener un mtodo main (), que se escribe de la misma forma
que el del ejemplo. Este mtodo ser el punto principal de nuestro pro-
grama, sera nuestro inicio de pseudocdigo. Al igual que el nombre de
la clase programa el mtodo main () viene delimitado por llaves que
indica su inicio y final.
Cdigo que imprime por pantalla
Dentro del mtodo main (), en el bloque delimitado por llave de apertura
y llave de cierre, existe una nica sentencia o instruccin que escribe
un texto por pantalla. Este es nuestro escribir de pseudocdigo, y es-
cribir por la pantalla del ordenador el mensaje que reciba como par-
metro. Cabe destacar que en java existen dos variantes de este el print
y println, la diferencia reside en que este ltimo escribe un salto de lnea
al final de la cadena.
La estructura general de una clase principal en Java suele ser la siguiente:

/ **
Est r uct ur a de una cl ase en J ava
*/
publ i c cl ass Nombr eDeLaCl ase {
/ / At r i but os de l a cl ase
/ / Mt odos de l a cl ase
/ / El mt odo mai n, que i ndi ca donde empi eza l a ej ecuci n
publ i c st at i c voi d mai n( St r i ng[ ] ar gs) {
/ / Var i abl es del mt odo
/ / Ej ecuci n del mt odo
}
}

13


Unidad didctica 1
INTRODUCCIN A JAVA
En el caso de ser una clase distinta de la clase principal, el mtodo main () no
suele aparecer.
Se han puesto como comentarios (que empiezan por dos barras) los elementos
que suelen componer una clase, que son los siguientes:
Atributos de la clase
Variables que se utilizan a nivel de clase.
Declaracin de mtodos
Son fragmentos de cdigo que nos permite crear acciones dentro de
nuestra clase. La definicin de mtodo en trminos de programacin
apareci con la llegada de los lenguajes orientados a objetos, podra-
mos decir que un mtodo es una funcin o procedimiento. En vez de
discernir entre uno u otro este trmino agrupa a ambos dos.
El mtodo principal main ()
Recuerda que este es el punto de entrada del programa. Un punto de
entrada es aquel que es llamada cuando se ejecuta nuestro programa.
Por poner un ejemplo, cuando el usuario hace doble click sobre un eje-
cutable lo primero que ejecutara sera el mtodo main.
Declaracin de variables
Se crean objetos de las clases que se han creado. En captulos poste-
riores lo entenderemos.
Sentencias
Es la parte que se ejecuta en el programa. Ya se ha visto en el primer
ejemplo un programa con una sentencia para escribir un texto en la panta-
lla. Las sentencias se ejecutan siempre en el orden en el que se escriben y,
siempre, una detrs de otra, hasta que se acaba el mtodo main ().
Ejemplo
Elabore un programa que escriba en pantalla los puestos de clasificacin de una
carrera de coches. En la primera lnea se escribir Carrera de coches. En las
siguientes lneas se escribirn los nombres de los clasificados en funcin del
puesto de llegada a meta. De momento estos ejercicios se realizarn en un fi-
chero de texto que ser guardado con extensin .java. En pasos siguientes co-
piaremos estos programas sobre eclipse para ejecutarlos.
Solucin:
publ i c cl ass Car r er aDeCoches {
publ i c st at i c voi d mai n( St r i ng[ ] ar gs) {
Syst em. out . pr i nt 1n( " Car r er a de coches" ) ;
Syst em. out . pr i nt ( " Pr i mer puest o: " ) ;

Unidad didctica 1
INICIACIN A JAVA
14
Syst em. out . pr i nt l n( Al onso) ;
Syst em. out . pr i nt ( " Segundo puest o: ) ;
Syst em. out . pr i nt l n( Rai kkonen) ;
Syst em. out . pr i nt ( Ter cer puest o: " ) ;
Syst em. out . pr i nt l n( Hami l t on) ;
}
}
Como podemos ver hemos hecho uso del mtodo de entrada de nuestro pro-
grama para mostrar por pantalla los ganadores de la carrera. Cabe destacar que
las instrucciones son ejecutadas en el orden que han sido escritas. Por lo tanto
en este ejemplo el programador decidir quien ha sido el ganador, ser tan sim-
ple como colocar el nombre del ganador en primer lugar. Tambin hemos usado
la funcin print y println, este programa producira esta salida por pantalla:
Car r er a de coches
Pr i mer puest o: Al onso
Segundo puest o: Rai kkonen
Ter cer puest o: Hami l t on
2.2. TIPOS DE DATOS
Cuando escribimos un programa se manejan valores, datos de forma apropiada
para cambiarlos, se hacen clculos, se presentan, se solicitan al usuario, se es-
criben en un disco, se envan por una red, etc.
Para poder trabajar con valores en un programa se guardan en variables. Una
variable guarda un nico valor. Una variable contiene:
Un nombre. Nombre de la variable que se quiere utilizar.
Un tipo. Describe los valores que se pueden guardar en dicha variable.
Un rango de valores que puede admitir. Depende del tipo de la variable.
Ejemplo
Si se tiene una variable de nombre nmeroDeLista, donde el tipo de valores que
se pueden guardar son nmeros enteros, nmeroDeLista puede contener el
nmero 34, o el nmero -234. Pero nunca puede guardar el valor 3.45 ni un tex-
to como hola mundo, ni un valor mayor que el admitido por la variable, como
por ejemplo 239849695287398274832749. En caso que hagamos esto dar un
error de compilacin, como ya vimos el compilador repasa que todo el progra-
ma este sintcticamente bien escrito.
15


Unidad didctica 1
INTRODUCCIN A JAVA
Para declarar una variable de un tipo, se indica de la siguiente forma:
double numeroDecimal;
Con ello se declara que va a existir en el programa una variable con el nombre
numeroDecimal y que esa variable va a guardar un valor del tipo double. Una
vez declarada se puede utilizar en cualquier lugar del programa poniendo su
nombre. Siempre que se utilice el nombre de una variable es como si pusiese el
valor que tiene.
Si se quiere guardar un valor en una variable, se utiliza el operador de asigna-
cin de valor de la siguiente forma:
numeroDecimal = 23.4;
Donde se indica el nombre de la variable, el carcter igual (=), y cualquier expre-
sin o clculo que se desee. El smbolo igual significa: haz el clculo que se en-
cuentra a la derecha del igual y, despus, almacena el valor calculado en la va-
riable que hay a la izquierda.
Si despus hacemos otra asignacin sobre esta variable:
La variable numeroDecimal guarda el valor 44.56 y se pierde el valor que alma-
cenaba con anterioridad.
Los tipos primitivos que nos ofrece java para utilizar en las variables y los inter-
valos de valores de cada uno de ellos, se pueden ver en la siguiente tabla:
Tipo Descripcin Valor min. / max.
byte Entero con signo -128 a 127
short Entero con signo -32768 a 32767
int Entero con signo -2147483648 a 2147483647
long Entero con signo -922117036854775808 a 922117036854775807
float Real de simple precisin 3.40282347e+38 a 1.40239846e-45
double Real de doble precisin 1.79769313486231570e+308 a 4.94065645841246544e-324
char Caracteres Unicode \u0000 a \uFFFF
boolean Verdadero o falso true o false


Unidad didctica 1
INICIACIN A JAVA
16
Tambin habr que ser cuidadosos ya que a mayor cantidad de informacin que
pueda almacenar una variable ms memoria ocupa, por lo tanto si tenemos su-
ficiente con un byte no definiremos un entero.
Los tipos primitivos se clasifican en:
Nmeros enteros. Permiten representar nmeros enteros positivos y
negativos con distintos intervalos de valores.
Nmeros reales. Permiten guardar valores con decimales con distinta
precisin.
Caracteres. Existe un tipo carcter (char) que permite representar cual-
quier carcter Unicode.
Booleano. Es un tipo que indica un valor lgico. Solo tiene dos valores,
verdadero (true) y falso (false).
Otro tipo muy utilizado es para los textos o cadenas de caracteres. En realidad
se trata de objetos predefinidos, pero se pueden utilizar de forma sencilla como
si fueran variables de tipos primitivos.
String texto;
texto = En un lugar de La Mancha de cuyo nombre...;
Ejemplo
Repitamos el paso anterior usando variables para almacenar los nombres de los
pilotos.
Solucin:
publ i c cl ass Car r er aDeCoches {
publ i c st at i c voi d mai n( St r i ng[ ] ar gs) {
Syst em. out . pr i nt 1n( " Car r er a de coches" ) ;
Syst em. out . pr i nt ( " Pr i mer puest o: " ) ;
St r i ng ganador = Al onso;
Syst em. out . pr i nt l n( ganador ) ;
Syst em. out . pr i nt ( " Segundo puest o: ) ;
St r i ng segundo = Rai kkonen;
Syst em. out . pr i nt l n( segundo) ;
Syst em. out . pr i nt ( Ter cer puest o: " ) ;
St r i ng t er cer o = Hami l t on;
Syst em. out . pr i nt l n( t er cer o) ;
}
}
17


Unidad didctica 1
INTRODUCCIN A JAVA
Ahora hemos preferido usar variables para almacenar los nombres de los pilotos
para obtener el mismo fin.
De este modo nosotros podramos manipular dichas variables para luego mos-
trarlas o utilizaras con otro propsito.

Existe la posibilidad de usar variables constantes que son
aquellas que no se pueden modificar a lo largo de la ejecucin
del programa, por ello se deben de declarar y asignar un valor.
Se pone delante del tipo de dato la partcula final.

2.3. OPERADORES
Sobre cada una de las variables que se utilizan, se pueden utilizar un conjunto
de operadores para formar expresiones o clculos.
2.3.1. NMEROS ENTEROS
Al realizar una operacin entre dos nmeros enteros el resultado siempre es un
entero:
Unarias. Un signo ms o un signo menos delante.
Ejemplo: +30, -30.
Multiplicativas. El signo * multiplica dos valores, el signo / divide el
primer valor entre el segundo, y % calcula el resto de la divisin entera.
Ejemplo: 3 * 3, 5 / 3, 8 % 3.
Aditivas (+, -). La suma y la resta de la forma usual.
Ejemplo: 3 + 2
Incremento y decremento (++, - -). Nos permite incrementar o decre-
mentar en uno el valor de la variable. Estos operadores de incremento y
decremento se pueden poner delante o detrs de la variable.
Relacin (>, >=, <, <=). Permiten comparar valores. El resultado de una
operacin con los operadores de relacin es un valor boolean indican-
do si es cierta o falsa la relacin.
Operadores de igualdad (=, !=). Comparan si dos valores son iguales
o son distintos. El resultado es un valor del tipo boolean, indicando si
es cierta o no la igualdad o desigualdad.

Unidad didctica 1
INICIACIN A JAVA
18
Operadores de asignacin (=, +=, -=, *=, /=, %=). El primero es el
operador de asignacin y los dems son operadores que permiten sim-
plificar la escritura de expresiones muy comunes.
2.3.2. NMEROS REALES
Con los nmeros reales se pueden realizar las mismas operaciones que con
nmeros enteros.
2.3.3. BOOLEANOS
Los operadores con booleanos son los siguientes:
Negacin (!). Devuelve true si el operando vale false y viceversa.
Y lgico (&&). Si tenemos dos operandos de esta forma op1 && op2,
se devuelve true si op1 y op2 son true. Si op1 es false, ya no se evala
op2. Existe la opcin de un solo & en cuyo caso siempre se evalan los
dos operandos.
O lgico (||). Si tenemos dos operandos de esta forma op1 || op2, se
devuelve true (si op1 u op2 son true). Si op1 es true, ya no se evala
op2. Existe la opcin de un solo | en cuyo caso siempre se evalan los
dos operandos.
2.3.4. ORDEN EN LOS OPERANDOS
Existen operandos que a la hora de evaluar una expresin tienen precedencia
sobre otros. El cmo se evala una expresin depende del orden de prioridad
de los operadores que contenga dicha expresin. De forma simplificada el or-
den de prioridad y la forma de evaluacin es:
1. Operadores unarios.
2. Operadores multiplicativos, de izquierda a derecha.
3. Operadores aditivos, de izquierda a derecha.
4. Operadores de relacin.
5. Operadores de asignacin.
19


Unidad didctica 1
INTRODUCCIN A JAVA
Teniendo en cuenta el orden de evaluacin, la siguiente sentencia:
a = -5 + 4 + 1 * 3 5 / 3 * 2 3 % 1;
1 6 7 2 8 3 4 9 5
Se evala la expresin de acuerdo al orden indicado debajo de la misma.
Operador unario a -5.
A continuacin se evalan los operadores multiplicativos de izquierda a
derecha, 1 * 3 se evala a 3, 5 / 3 se evala a 1 que multiplicado por 2 se
evala a 2 y 3 % 1 se evala a 0. En este momento la expresin queda:
a = -5 + 4 + 1 - 2 0
Despus se evalan los operadores aditivos de izquierda a derecha, sien-
do el resultado final de -2. Este es el valor que se guarda en la variable a.

Si se opta porque la evaluacin se realice en el orden que se
desee, se deben utilizar parntesis. Los parntesis preceden al
orden establecido anteriormente.


Ejemplo
Ahora tenemos suficientes conocimientos como para traducir el ejercicio que calcula
el rea del tringulo rectngulo. Slo nos falta saber como adquirir datos del teclado.
Para leer desde el teclado usaremos la clase Scanner de la siguiente manera:
Scanner r eader = new Scanner ( Syst em. i n) ;
i nt al t ur a = r eader . next I nt ( ) ;
Como se puede ver aqu creamos un objeto de la clase Scanner y le decimos
que escuche en la entrada Standard System.in (teclado), posteriormente le indi-
camos que lea una cadena. Esta accin se completar cuando el usuario pulse
la tecla intro. Es decir cuando el usuario pulse la tecla intro en la variable altura
tendremos guardado el valor que el usuario ha introducido.
Solucin:
i mpor t j ava. ut i l . Scanner ;
publ i c cl ass Mai n {
publ i c st at i c voi d mai n( St r i ng[ ] ar gs) {
Scanner r eader = new Scanner ( Syst em. i n) ;
Syst em. out . pr i nt l n( " I nt r oduza l a al t ur a del : " ) ;
i nt al t ur a = r eader . next I nt ( ) ;
Syst em. out . pr i nt l n( " I nt r oduza l a base del : " ) ;

Unidad didctica 1
INICIACIN A JAVA
20
i nt base = r eader . next I nt ( ) ;
i nt super f i ci e = base * al t ur a;
Syst em. out . pri nt l n( "La superf i ci e es: " +superf i ci e) ;
}
}
Ntese que para el uso de la clase Scanner es necesario realizar un import. Ms
adelante veremos para que se usan estos imports.
2.3.5. EXPRESIONES ARITMTICO-LGICAS
En una expresin aritmtico-lgica se utilizan operadores aritmticos, operado-
res relacinales y de igualdad, y nos devuelve un valor booleano.
Una expresin aritmtico-lgica podra ser la que sigue y su valor es true, pues
es cierto que 5 es menor que 12:
(3 + 2) < (6 * 2)
En una expresin aritmtico-lgica se pueden combinar varias expresiones sen-
cillas de las anteriores mediante los operadores lgicos. La precedencia de los
operadores booleanos es menor que la de los operadores relacinales, por lo
que primero se evalan las desigualdades y despus los operadores booleanos.
El orden de prioridad entre los operadores booleanos es:
Negacin.
Y lgico.
O lgico.
Si tomamos como ejemplo la expresin:
6 + 5 < 6 * 2 || 5 > 8 && 7 > 6
Se evalan primero las expresiones aritmticas y despus las relacinales, y nos
queda as:
t r ue | | f al se && t r ue
En este caso bastara con la primera expresin a true ya que el operador es ||,
por tanto se evaluara toda la expresin a true.
21


Unidad didctica 1
INTRODUCCIN A JAVA
Ejemplo
Dadas las siguientes expresiones aritmticas, calcule cul es el resultado de
evaluarlas.
a) 35 + 30 - 15
b) 30*20 + 25* 20
c) 30*20/2-50/5*3
d) 25/20*4+2/5*9
Explicacin:
a) 35 + 30 - 15
Se realizan las operaciones de izquierda a derecha, pues son todas
aditivas:
35 + 30 - 15 65 - 15 50
b) 30 * 20 + 25 * 20
Se realizan primero las operaciones multiplicativas de izquierda a
derecha:
30* 20+25* 20 600+25* 20 600 + 500
Despus se realiza la operacin de suma:
600 + 500 1100
c) 30* 20 / 2 50 / 5* 3
Se realizan primero las operaciones multiplicativas de izquierda a
derecha:
30 * 20 / 2 50 / 5 * 3 600 / 2 50 / 5 * 3 300 - 50 / 5 * 3 =
300 10 * 3 300 - 30
Despus se realiza la operacin de sustraccin:
300 30 270
d) 25 / 20 * 4 + 2 / 5 * 9
Se realizan primero las operaciones multiplicativas de izquierda a
derecha:
25 / 20 * 4 + 2 / 5 * 9 1 * 4 + 2 / 5 * 9 4 + 2 / 5 * 9 4 +
0 * 9 4 + 0
Despus se realiza la operacin de suma:
4 + 0 4
Ntese que la divisin de 25 entre 20 da como resultado cero, esto es debido a
que estamos hablando de nmero enteros. No es lo mismo igualar el resultado
de una divisin a un entero que a un double. Por lo tanto 25/20 = 0 si hablamos
de enteros y 25.0/20.0 = 0.4 si hablamos de decimales o double.

Unidad didctica 1
INICIACIN A JAVA
22
2.4. CONVERSIONES DE TIPO DE DATOS
Para que el resultado sea el esperado hay muchas ocasiones que es necesario
realizar alguna conversin de tipos.
Java emplea siempre que puede la representacin en forma int de 32 bits, por
razones de eficacia, por lo tanto permite la conversin automtica o promocin
donde el tipo ms pequeo puede ser colocado en el espacio compatible ms
grande, as un tipo byte, puede ser colocado perfectamente en una variable int,
la cual tiene espacio para contener el valor. Lo contrario no siempre es cierto y
se hace necesaria una conversin explcita, estrechamiento o casting:
i nt a=100;
byt e b=( byt e) a;
2.4.1. CASTING
El casting se utiliza cuando Java no puede realizar automticamente la conver-
sin de tipo, generalmente dado que el receptor tiene menos espacio que el tipo
de origen, por lo que se hace necesario un casting.
El casting, pues, es la conversin explcita y se realiza anteponiendo al tipo ori-
gen el nombre del tipo al que se desea realizar la conversin entre parntesis:
i nt i nt Val ue = ( i nt ) f l oat Val ue;
El casting es automtico desde los tipos de pequea ocupacin a los de gran
ocupacin:
l ongVal ue=i nt Val ue; / / per mi t i do
l ongVal ue=( l ong) i nt Val ue; / / expl ci t ament e no es necesar i o
Sin embargo, si se quiere hacer la conversin a un tipo ms pequeo:
i nt Val ue=l ongVal ue / / gener a un er r or de compi l aci n
i nt Val ue=( i nt ) l ongVal ue / / si n er r or per o con posi bl e
pr di da de dat os
En las operaciones pueden entremezclarse cualesquiera tipos decimales, pero
el resultado se promociona a un tipo que no d problemas de desbordamiento:
Si solo intervienen tipos byte, short, int el resultado es int.
Si interviene un tipo long el resultado es long.
Si interviene un tipo float el resultado es flota.
Si interviene un tipo double el resultado es double.
23


Unidad didctica 1
INTRODUCCIN A JAVA
Ejemplo
Creamos un programa llamado ConversionImplicita en la que se declaren varia-
bles de tipo byte, char, short, int, flota, y double, y se realizan las siguientes
operaciones:
1. Resul1 = Multiplicamos el valor float con el valor byte.
2. Resul2 =Dividimos el valor int con el valor char.
3. Resul3 =Multiplicamos el valor double con el valor short.
4. Resul4 =Dividimos el valor int con el valor char.
5. ResulTotal = Resul1 + Resul2 + Resul3 + Resul4
6. Y lo mostramos por pantalla.
Solucin:
cl ass conver si onI mpl i ci t a {
publ i c st at i c voi d mai n( St r i ng ar gs[ ] ) {
byt e sByt e = 50;
char sChar = ' a' ;
shor t sShor t = 1024;
i nt sI nt = 50000;
f l oat sFl oat = 5. 67f ;
doubl e sDoubl e = . 1234;
/ / Conver si on I mpl i ci t a
f l oat sResul t 1 = sFl oat * sByt e;
i nt sResul t 2 = sI nt / sChar ;
doubl e sResul t 3 = sDoubl e * sShor t ;
/ / Conver si on f or zada
doubl e sResul t 4 = ( doubl e) ( sI nt / sChar ) ;
doubl e Resul t Tot al = sResul t 1 + sResul t 2 +
sResul t 3 + sResul t 4;
Syst em. out . pr i nt l n( " El val or es " ) ;
Syst em. out . pr i nt l n( Resul t Tot al ) ;
}
}

Unidad didctica 1
INICIACIN A JAVA
24
Cabe destacar en este ejercicio el uso de la variable char como entero. Esto es
debido a que una variable char es equivalente al valor entero de dicho carcter
en la tabla ASCII, en este caso la letra 'a' corresponde con el valor 97. Para ms
informacin consultar la tabla ASCII:
http://www.asciitable.com/

Para convertir valores entre tipos existen dos formas:
Conversin automtica de tipos de datos: Si el tipo al que se
asigna un valor es mayor, la conversin se realiza autom-
ticamente.
Conversin explcita: Se pone delante del valor a convertir,
entre parntesis, el tipo al que se desea convertir. Como es-
ta conversin suele implicar una prdida de valor, hay que
tener mucho cuidado.

25


Unidad didctica 1
INTRODUCCIN A JAVA
3. ESTRUCTURAS DE CONTROL
3.1. ESTRUCTURAS DE SELECCIN
3.1.1. ESTRUCTURA IF
La estructura if se escribe de la siguiente forma:
i f ( condi ci n) {
sent enci as
}

La condicin se escribe siempre entre parntesis.
La condicin es una expresin lgica.
Si la condicin devuelve true se ejecuta el conjunto de sentencias de-
ntro del bloque del if.
Si se evala a false no se ejecutar nada de este if y continuar con las
sentencias posteriores a este if.
Si la estructura if lleva asociada solo una sentencia, se puede poner sin
llaves, pero se recomienda ponerlas siempre. (Esto mismo es aplicable
al resto de estructuras que se describen en las siguientes secciones).

Unidad didctica 1
INICIACIN A JAVA
26
Ejemplo
Suponga que en un programa existe una variable numero de tipo int cuyo valor es 30.
Solucin:
i f ( numer o <= 80) {
Syst em. out . pr i nt l n ( "El numer o es menor o i gual que 80. ") ;
}

Como la condicin vale true, se escribe por pantalla el mensaje de la
sentencia dentro del bloque if.
3.1.2. ESTRUCTURA IF-ELSE
La estructura if-else se escribe de la siguiente forma:
i f ( condi ci n) {
sent enci as
}el se {
sent enci as
}

La condicin se escribe siempre entre parntesis.
La condicin es una expresin lgica.
Si la condicin es verdadera, es decir, se evala a true, se ejecuta la sen-
tencia o bloque de instrucciones que se encuentra a continuacin del if.
Si, por el contrario, la condicin se evala a false, se ejecuta la senten-
cia o el bloque de sentencias que se encuentra a continuacin del else
y el programa continuara su ejecucin.
Tras la ejecucin de las sentencias del if o del else, el programa conti-
nuara su ejecucin de forma secuencial con la sentencia inmediata-
mente posterior a toda esta estructura.
27


Unidad didctica 1
INTRODUCCIN A JAVA
Ejemplo
Suponga que en un programa existe una variable numero de tipo int cuyo valor es 80.
Solucin:
i f ( numer o <= 80) {
Syst em. out . pr i nt l n ( "El numer o es menor o i gual que 80. ") ;
}el se {
Syst em. out . pr i nt l n ( El numer o es mayor de 80. " ) :
}
3.1.3. OPERADOR CONDICIONAL
El operador condicional (?) evala igual que la estructura if-else. El operador
evala la condicin a la izquierda del smbolo ?. Si la condicin vale true devuel-
ve el valor de la expresin que haya entre el ? y :. Si la condicin vale false
se devuelve el valor de la expresin tras el smbolo :.
Ejemplo
Suponga que debemos determinar la mayora de edad y se tiene un chico de
edad 17 aos.
Solucin:
St r i ng chi coMayor = ( El chi co es mayor de edad" ) ;
St r i ng chi coMenor = ( El chi co es menor de edad" ) ;
Syst em. out . pr i nt l n( edad >= 18 ? chi coMayor : chi coMenor ) ;
3.1.4. ESTRUCTURA SWITCH
La estructura switch consta de una expresin y una serie de etiquetas case con
un caso opcional default. La sentencia switch se escribe de la siguiente forma:
swi t ch ( expr esi n) {
case val or 1:
sent enci as;
br eak:
case val or 2:
case val or 3:
sent enci as;
br eak;

Unidad didctica 1
INICIACIN A JAVA
28
def aul t :
sent enci as;
br eak;
}
La expresin, que es obligatorio que est entre parntesis, tiene que
evaluarse a un entero, un carcter, un enumerado o un boolean.
A continuacin, en cada case aparece un valor que nicamente puede
ser una expresin constante, es decir, una expresin cuyo valor se
puede conocer antes de empezar a ejecutar el programa, del mismo ti-
po que la expresin del switch.
Despus de cada case se puede poner una nica sentencia o un con-
junto de ellas.
Los valores asociados en cada case se comparan en el orden en que
estn escritos.
Cuando se quiere interrumpir la ejecucin de sentencias se utiliza la
sentencia break que hace que el control del programa termine el switch
y contine ejecutando la sentencia que se encuentre despus de esta
estructura.
Si no coincide el valor de ningn case con el resultado de la expresin,
se ejecuta la parte default.
Si ningn valor de los case coincide con el resultado de la expresin y
la parte default no existe, ya que es opcional, no se ejecuta nada de la
estructura switch.
Ejemplo
Suponga que desea realizar una accin en funcin del opcin del men que
seleccione el usuario. Un switch es la mejor opcin para tener evaluar una va-
riable y actuar cuando toma diferentes valores.
Solucin:
publ i c cl ass Opci onesMenu {
publ i c st at i c voi d mai n( St r i ng[ ] ar gs) {
i nt di a = 3;
swi t ch ( di a) {
case 1:
Syst em. out . pr i nt l n( " opci on 1" ) ;
br eak;
case 2:
Syst em. out . pr i nt l n( " opci on 2" ) ;
br eak;
29


Unidad didctica 1
INTRODUCCIN A JAVA
case 3:
Syst em. out . pr i nt l n( " opci on 3" ) ;
br eak;
case 4:
Syst em. out . pr i nt l n( " opci on 4" ) ;
br eak;
case 5:
Syst em. out . pr i nt l n( " opci on 5" ) ;
br eak;
case 6:
Syst em. out . pr i nt l n( " opci on 6" ) ;
br eak;
def aul t :
Syst em. out . pr i nt l n( " no exi st e es opci on" ) ;
br eak;
}
}
}

3.2. ESTRUCTURAS ITERATIVAS
3.2.1. ESTRUCTURA WHILE
La estructura de repeticin while sigue el siguiente esquema:
whi l e ( condi ci n) {
sent enci as
}

La condicin se escribe siempre entre parntesis.
La condicin es una expresin lgica.
Si la condicin vale true, se ejecutan las sentencias que componen el bucle.
Cuando concluye la ejecucin de las instrucciones del bucle se vuelve a
evaluar la condicin. De nuevo, si la condicin es cierta se vuelven a
ejecutar las instrucciones del bucle.

Unidad didctica 1
INICIACIN A JAVA
30
En algn momento la condicin valdr false (para evitar un bucle infini-
to), en cuyo caso finaliza la ejecucin del bucle y el programa contina
ejecutndose por la sentencia que se encuentre a continuacin de la
estructura while.
Ejemplo
El siguiente programa devuelve la diferencia entre dos nmeros.
Solucin:
publ i c cl ass Rest a {
publ i c st at i c voi d mai n( St r i ng[ ] ar gs) {
i nt val or = 200;
i nt numer o = 100;
i nt cont ador = 0;
whi l e ( ( val or > numer o) ) {
cont ador ++;
val or - - ;
}
Syst em. out . pr i nt l n( "La di f er enci a es: " + cont ador ) ;
}
}
3.2.2. ESTRUCTURA DO-WHILE
La sentencia do-while tiene la siguiente estructura:
do {
sent enci as
} whi l e ( condi ci n) ;

Cuando en un programa se llega a una estructura do-while se empiezan
a ejecutar las sentencias que componen la estructura y despus de una
primera ejecucin se evala la condicin.
Si la condicin vale true, se ejecutan de nuevo las sentencias que com-
ponen la estructura.
El bucle deja de repetirse cuando, tras evaluarse la condicin vale false.
Es necesario que dentro del bucle, en algn momento, la condicin
valga false para evitar que el bucle se ejecute indefinidamente.
31


Unidad didctica 1
INTRODUCCIN A JAVA
Ejemplo
Suponga que se desea realizar un programa que en funcin de la edad del
usuario se debe determinar si es mayor de edad o menor. Al terminar debe im-
primir por pantalla el nmero introducido.
Solucin:
publ i c cl ass Edad {
publ i c st at i c voi d mai n( St r i ng[ ] ar gs) {
i nt edad = 1 ;
do {
i f ( edad == 1) {
Syst em. out . pr i nt l n( " Edad I ni ci al : " + edad) ;
edad++;
}el se i f ( edad > 1 && edad < 18 ) {
Syst em. out . pr i nt l n( " Es menor de edad: " + edad) ;
edad++;
}el se{
Syst em. out . pr i nt l n( " Es mayor de edad: " +
edad) ;
edad++;
}
} whi l e ( edad <19) ;
}
}

Cosas interesantes de este ejemplo es que estamos convirtiendo de String a
carcter, mediante el mtodo charAt, que lo hace es coger el elemento 0 de la
cadena (el primer carcter). Tambin es un ejemplo perfecto para este tipo de
bucle, puesto que el do while va a entrar siempre una vez por lo menos en la
iteracin puesto que la condicin se efecta despus. Y tambin es perfecto
puesto que no sabemos las veces que el usuario puede probar a introducir la
tecla correcta.
3.2.3. ESTRUCTURA FOR
La estructura for tiene dos formas. La ms habitual es:
f or ( i ni ci al i zaci n; condi ci n; act ual i zaci n) {
sent enci as
}


Unidad didctica 1
INICIACIN A JAVA
32
Consta de tres elementos y son los siguientes:
Inicializacin. Solo se ejecuta en la primera iteracin del bucle y es una
sentencia que permite inicializar el bucle. Puede ser la declaracin e
inicializacin de las variables que se utilizan en el bucle.
Condicin. Es la condicin para continuar la ejecucin del bucle. La
condicin se evala siempre antes de empezar a ejecutar el bucle. Si la
condicin es cierta, se ejecutan las sentencias del bucle.
Actualizacin. Despus de ejecutar las sentencias del bucle y antes de
volver a evaluar la condicin se ejecuta la actualizacin. Esta parte se
suele utilizar para modificar el valor de las variables que forman parte de
la condicin.
Todos los elementos que se acaban de describir del bucle for son opcionales,
es decir, pueden ser vacos.
Ejemplo
Si se quisiera escribir por pantalla 10 veces el mensaje Hola mundo con el
nmero de vez que se escribe cada una. (1. Hola mundo. 2. Hola mundo. 3.
Hola mundo, etc.):
Solucin:
f or ( i nt i = 0; i < 10; i ++) {
Syst em. out . pr i nt ( i +1) ;
Syst em. out . pr i nt l n( " Hol a mundo. " ) ;
}
Este ejemplo nos indica que el bucle for ser usado para el momento en el que
sepamos el nmero determinado de veces que queremos que se reproduzca.
En este caso es 10, pero tambin podra ser desde el principio hasta el final de
un array (Ms adelante veremos los arrays).
3.2.4. USO DE LAS ESTRUCTURAS DE REPETICIN
Es importante utilizar el tipo de bucle ms apropiado en cada parte de un pro-
grama. Se tiene que tener en cuenta un conjunto de reglas para usar una u otra
estructura de repeticin.
while. Si el bucle se ejecuta 0 o ms veces. Es decir, si hay casos don-
de no se ejecute.
do-while. Si la parte de ejecucin del bucle se ha de hacer al menos
una vez.
for. Se sabe el nmero de veces que se ha de repetir el bucle.
33


Unidad didctica 1
INTRODUCCIN A JAVA
Si utilizar la inicializacin y la actualizacin del bucle permite escribir el cdigo de
forma ms clara, se realiza un recorrido en una estructura de almacenamiento.
Si se tiene una estructura de almacenamiento y se va a recorrer completa reali-
zando operaciones con todos sus valores, se utilizar la segunda versin del for.

Unidad didctica 1
INICIACIN A JAVA
34
4. PROCEDIMIENTOS/FUNCIONES
4.1. CLUSULA STATIC
Las funciones de una clase precedidos por la palabra static se denominan ele-
mentos de clase. Son funciones cargadas en memoria y se pueden utilizar es-
cribiendo el NombreDeLaClase.Funcion().
Ejemplo
Se nos pide que declaremos un atributo de clase (static) llamado numProfesores
y un mtodo de clase(static) llamado imprimeTotalProfesores.
Solucin:
publ i c cl ass Pr of esor {
/ / Cuent a de pr of esor es dados de al t a.
/ / I ni ci al ment e a 0
st at i c i nt numPr of esor es = 0;

st at i c voi d i ncr ement aNumPr of esor es( ) {
/ / Se I ncr ement a el nm. de pr of esor es r egi st r ados
numPr of esor es++;
}

st at i c voi d i mpr i meTot al Pr of esor es( ) {
Syst em. out . pr i nt l n( " Nmer o t ot al de pr of esor es "
+ numPr of esor es) ;
}
35


Unidad didctica 1
INTRODUCCIN A JAVA
/ *
* Par a poder ut i l i zar nuest r a cl ase y sus f unci ones
sol o es necesar i o desde
* el pr ogr ama pr i nci pal de l a si gui ent e f or ma:
*/
publ i c st at i c voi d mai n( St r i ng ar gs[ ] ) {
Pr of esor . i ncr ement aNumPr of esor es( ) ;
Pr of esor . i mpr i meTot al Pr of esor es( ) ;
}
}

En este ejemplo podemos ver claramente como lo primero que se ejecuta es el
mtodo main. Ya hemos explicado que este mtodo es el que primero se ejecu-
ta cuando lanzamos la aplicacin. Lo que aqu sucede es que se suma 1 a la
variable numProfesores y luego se escribe por pantalla. Se aconseja al alumno
que cuando portemos este ejemplo a eclipse (en apartados posteriores) se llame
varias veces al procedimiento incrementNumProfesores para ver el efecto final.
4.2. PROCEDIMIENTOS
Cuando se trabaja en programacin orientada a objetos, las acciones o compor-
tamientos de un objeto que hemos creado se denominan mtodos, que estudia-
remos y comprenderemos ms adelante. Pero estos mtodos tambin tienen
que definir si solo harn una accin o, adems, devolvern un valor. Por ello,
vamos a ver cmo se define una funcin, que es la que devuelve un valor o un
procedimiento, que har una accin pero no devolver nada.
En el caso de los procedimientos se indica con la clusula void y no devuelven
ningn valor (void en ingls significa nada).
static void dameVal or ( ) {
sent enci as
}

4.3. FUNCIONES
En el caso de que se quiera que un mtodo se comporte como una funcin, lo
que debemos hacer es sustituir la clusula void por el valor primitivo que se
quiera devolver, o por la clase que se quiera devolver. La instruccin return es la

Unidad didctica 1
INICIACIN A JAVA
36
que marca que es lo que se va a devolver, esta clusula marca el final de la eje-
cucin de la funcin. Por lo tanto no se ejecutar ninguna lnea ms de cdigo
por debajo del return. Veamos unos ejemplos:
st at i c i nt devuel veNmer o( ) {
r et ur n 1;
}
En este ejemplo esta funcin siempre devolver el valor uno. Estamos hablando
del trmino devolver, pero eso significa que depositar el valor que retorna en la
variable a la que se asigne esta funcin. Con lo que:
i nt var i abl e = 2;
var i abl e = devuel veNmer o( ) ;
Nosotros podemos hacer esto inicializando la variable a 2 y asignndole el valor
que devuelve la funcin, en este caso la variable obtendr el valor de 1. Veamos
un ejemplo ms complejo teniendo esta funcin:
st at i c i nt suma( i nt a, i nt b) {
r et ur n a + b;
}
En este ejemplo estamos obteniendo dos parmetros de entrada que se definen
entre parntesis junto con el nombre de la funcin (a esto se le denomina firma
de la funcin). Ntese como estamos devolviendo la suma entre a y b, no nece-
sitamos definir una variable para asignar el valor de la suma, directamente lo
devolvemos. Ahora podramos ejecutar esto:
i nt r esul t ado = 0;
r esul t ado = suma( 1, 2) ;
Como hemos visto en el ejemplo anterior definimos una nueva variable la cual
inicializamos con el valor 0 y luego le asignamos el resultado de la funcin su-
ma, con lo cual, la variable resultado acaba la ejecucin con valor 3.
Veamos unos ejemplos devolviendo un tipo primitivo y devolviendo una clase:
Devuelve un valor primitivo:
static char dameVal or ( ) {
sent enci as
return char ;
}
Devuelve un objeto Alumno:
Alumno dameAl umno( ) {
sent enci as
return Al umno ;
}

37


Unidad didctica 1
INTRODUCCIN A JAVA
Con la clusula return le indicamos a la funcin el valor que se quiere devolver
en esa funcin.

El comportamiento con objetos se ver en la siguiente unidad.


Ejemplo
Se va a crear una clase Coche en la que se nos devuelva los datos de un coche
a travs de una funcin y se imprima por pantalla a travs de un procedimiento.
Solucin:
publ i c cl ass Coche {
/ ** Pr ocedi mi ent o que i mpr i me el nombr e del coche. */
publ i c st at i c voi d i mpri meNombreCoche ( St ri ng nombreCoche ) {
Syst em. out . pr i nt l n( " Coche: " + nombr eCoche ) ;
}
/ ** Funci n que devuel ve el nombr e del coche. */
publ i c st at i c St r i ng dameNombr eCoche ( ) {
r et ur n " Audi A3" ;
}
publ i c st at i c voi d mai n( St r i ng[ ] ar gs) {
St r i ng nombr eCoche = Coche. dameNombr eCoche( ) ;
Coche. i mpr i meNombr eCoche( nombr eCoche) ;
}
}
4.4. CONTROL DE ACCESO A PROCEDIMIENTOS/FUNCIONES
Una clase queda determinada por el conjunto de los valores de sus atributos y
sus funciones. Una modificacin sin control, mal intencionada o por error, de los
atributos de esta clase puede dar lugar a inconsistencias o comportamientos no
deseados de esta clase.

Unidad didctica 1
INICIACIN A JAVA
38
Es necesario poder controlar el acceso a los atributos y mtodos de la clase y
por ello Java proporciona un control de acceso a los componentes de esta, de
forma que es posible mostrar o restringir acceso en funcin de lo que nosotros
queramos mostrar de nuestra clase. Para ello, disponemos de los siguientes
mecanismos:
Acceso privado (private). Los elementos privados solo se pueden usar
dentro de la clase que los define, nunca desde ninguna otra clase.
Acceso de paquete. No se escribe nada. Mientras las clases pertenez-
can al mismo paquete, el acceso a estos componentes es libre.
Acceso protegido (protected). Los elementos protegidos solo se pue-
den usar dentro de la clase que los define, aquellas clases que la ex-
tiendan y cualquier clase en el mismo paquete.

La herencia de clases se ver en la siguiente unidad.


Acceso pblico (public). Todas las clases pueden utilizar los elemen-
tos public de esta clase.
As, para limitar el acceso a los atributos nombre, apellidos y curso de un objeto
profesor se declararan como:
cl ass Pr of esor {
pr vat e St r i ng nombr e;
pr vat e St r i ng apel l i dos;
pr vat e i nt cur so;
pr vat e i nt NP; / / Nmer o Per sonal : i dent i f i cat i vo ni co
pr vat e St r i ng gr upo;
}

De esta manera, cualquier intento de modificar cualquier atributo privado dar
lugar a un error de compilacin, y solo se podr acceder a la parte pblica de la
clase.
Solo se pueden modificar los valores de los atributos desde las funciones de la
clase.
39


Unidad didctica 1
INTRODUCCIN A JAVA
5. PAQUETES
Cuando se hablan de paquetes nos tienen que venir a la cabeza agrupaciones
de clases, interfaces y otros paquetes (subpaquetes) que estn relacionados de
alguna manera.
Si creamos un paquete denominado clientes y tenemos una clase AltaClientes,
ModificacinClientes y BajaProductos, la lgica nos dice que haramos la si-
guiente agrupacin:
AltaClientes
Paquete clientes
ModificacinClientes
Y crearamos otro paquete llamado productos donde ira la clase BajaProductos.
Paquete productos BajaProductos
Por tanto los paquetes:
proporcionan un mecanismo de encapsulacin de mayor nivel que las
clases.
Y permiten unificar un conjunto de clases e interfaces relacionados fun-
cionalmente.
Esta estructura que hemos definido hasta el momento tiene una determinada
sintaxis en Java. Para indicar que la clase que se est escribiendo pertenece a
un paquete, la primera sentencia debe tener la sintaxis:
package nombr ePaquet e;
Esto nos lo tenemos que imaginar como una estructura de directorio, y todos los
elementos que se creen dentro de esta carpeta, formarn parte de este paquete.

Unidad didctica 1
INICIACIN A JAVA
40
5.1. CMO USAR LOS PAQUETES
Cuando en una clase se quieren utilizar clases contenidas en otro paquete dife-
rente, se aade una declaracin de importacin, de la siguiente manera:
/ / I mpor t aci n de l a cl ase " Coche" del paquet e " Veh cul os"
import Vehi cul os. Coche;
/ / I mpor t aci n de t odas l as cl ases que cont enga el paquet e
import Vehi cul os. *;
5.2. NOMBRES DE PAQUETES
El nombre de un paquete es aconsejable que siga las siguientes recomendaciones:
El nombre, como todos los nombres que utilicemos para identificar
cualquier elemento en Java, debe ser representativo de los elementos
que contiene.
Es interesante crear una estructura de paquetes, incluso poniendo el
dominio y nombre de la empresa.
package es. exi t ae. vehi cul os;
Ms adelante veremos los derechos de acceso a los paquetes, pero se tiene
que tener claro que si se crea una estructura de paquetes y subpaquetes no
implica derechos de acceso.
Ejemplo
Se desea realizar una biblioteca de clases con las diferentes conexiones a las
base de datos para facilitar el desarrollo de aplicaciones de gestin en la em-
presa Exitae:
Oracle, conexionOracle.
SQL Server, conexionSQLServer.
Acces, conexionAcces.
Cada uno de estos paquetes contendr una clase que nos facilitar la conexin
a las distintas bases de datos.
41


Unidad didctica 1
INTRODUCCIN A JAVA
Solucin:
package es. exi t ae. gest i on. basesdedat os. Or acl e;
public class conexi onOr acl e{
}
package es. exi t ae. gest i on. basesdedat os. SQLSer ver ;
public class conexi onSQLSer ver {
}
package es. exi t ae. gest i on. basesdedat os. Acces ;
public class conexi onAcces {
}

Unidad didctica 1
INICIACIN A JAVA
42
6. INSTALACIN DE ECLIPSE
Ahora que ya conocemos las instrucciones ms importantes de Java podemos
ponernos manos a la obra para empezar con nuestros proyectos.
Eclipse es un entorno de desarrollo de cdigo abierto, por lo que se puede obte-
ner gratuitamente. Desde su pgina oficial, http://www.eclipse.org/downloads,
podemos descargar el paquete Eclipse Classic de la ltima versin disponible
(p. ej. 3.6.2) Elegiremos la versin para nuestra plataforma (Windows, Mac, Linux).
Una vez descargado, Eclipse no necesita instalacin. Simplemente hay que
descomprimir el archivo .zip en un directorio, por ejemplo C:\Archivos de Pro-
grama\eclipse. Ah encontraremos el programa principal eclipse.exe.
Al ejecutarlo por primera vez nos preguntar la localizacin del workspace.
Esto es la carpeta donde se crearn los nuevos proyectos. Elegimos una y mar-
camos la casilla para usarla por defecto:

Figura 2. Cuadro de dilogo para elegir la localizacin de workspace
43


Unidad didctica 1
INTRODUCCIN A JAVA
A continuacin, vemos la pantalla de bienvenida. La cerramos y encontramos la
ventana de trabajo principal:

Figura 3. Ventana de trabajo
Eclipse es un IDE (Integrated Development Environment), nos permitir almace-
nar varios proyectos y gracias a sus opciones de men podremos crear ficheros
para cada proyecto fcilmente. Un proyecto es un conjunto de ficheros que se
van a empaquetar para formar un ejecutable, si esto lo traducimos a lo que hab-
amos visto hasta ahora, un proyecto es un conjunto de algoritmos (ficheros de
cdigo fuente) que se agrupan para formar una funcionalidad determinada, ser
empaquetados para su posterior distribucin.
6.1. LA PRIMERA APLICACIN EN ECLIPSE
El siguiente paso ser crear nuestro primer proyecto. Para ello seleccionamos la
opcin del men File > New > Project:

Figura 4. Paso para crear el proyecto

Unidad didctica 1
INICIACIN A JAVA
44

Figura 5. Elegimos Java Project
En la siguiente ventana indicamos el nombre del proyecto, su ubicacin y otras
configuraciones. Usaremos los datos que se ven en la figura, y pulsaremos Finish:

Figura 6. ltima pantalla en la configuracin
45


Unidad didctica 1
INTRODUCCIN A JAVA
Con esto ya tenemos nuestro proyecto creado, y se puede ver en la vista Pac-
kage Explorer (el panel izquierdo). Lo siguiente es crear una clase en la carpeta
src. Debemos indicar su nombre, el paquete Java al que pertenece, y otras op-
ciones. Usaremos los datos que se ven en la figura:

Figura 7. Primer paso para crear una clase

Figura 8. Opciones configurables para crear una clase

Unidad didctica 1
INICIACIN A JAVA
46
Esto nos genera un fichero .java con el esqueleto de una clase. El mtodo
main() es el que se ejecutar al arrancar la aplicacin. Ms adelante se explicar
con ms detalle. Este mtodo ser nuestro punto de entrada. Ser el inicio que
usbamos en pseudocdigo. Es importante marcar la opcin que dice public
static void main (String[] args).
Para probar nuestro programa, aadimos una lnea al main() que imprima una
lnea en la consola, dicha linea sera nuestro escribir de pseudocdigo, como
podis ver dicha instruccin tiene su implementacin en java y en prcticamente
todos los lenguajes:
package pr i mer aapl i caci on;
publ i c cl ass Mai n {
publ i c st at i c voi d mai n( St r i ng[ ] ar gs) {
Syst em. out . pr i nt l n( " hol a mundo" ) ;
}
}
Finalmente, pulsamos la opcin de men Run > Run para ejecutar, y vemos el
resultado en el panel Console. El panel Console normalmente aparece ya por
defecto debajo de nuestro fichero de cdigo, pero si no lo tenemos podemos
abrirlo en el men Window > Show View > Console.
Ejercicio
Ahora que ya tenemos nuestro primer proyecto con un Hola Mundo, como el
que hicimos con pseudocdigo, sera recomendable portar nuestro primer ejer-
cicio de pseudocdigo a Java. Vamos a portar el ejercicio que calcula la super-
ficie de un rectngulo:
Los pasos antes de ponernos a escribir el cdigo en nuestro fichero sern:
Crear un proyecto nuevo de Java en eclipse siguiendo los pasos ante-
riormente descritos llamado SuperficieTriangulo.
Crear una nueva clase llamada Main con el mtodo main. Es muy im-
portante prestar atencin a las maysculas y minsculas, puesto que
Java es un lenguaje CaseSensitive. CaseSensitive significa que es
sensible a cambios entre mayscula y minscula y no es lo mismo
Main que main.
Abriremos el fichero que contiene el algoritmo diseado en pseudoc-
digo y empezaremos el proceso de traduccin. Conocemos en java ca-
si todo lo que necesitamos, anteriormente vimos la manera de poder
escribir por pantalla y leer datos del teclado.
47


Unidad didctica 1
INTRODUCCIN A JAVA
6.2. DEBUGGING
La herramienta Debug de Eclipse nos permite analizar la ejecucin de nuestro
programa lnea a lnea.
Para probarlo, usaremos la clase Main creada en el apartado anterior, aadien-
do el siguiente cdigo:

package pr i mer aapl i caci on;
publ i c cl ass Mai n {
publ i c st at i c voi d mai n( St r i ng[ ] ar gs) {
St r i ng cadena0 = Hol a;
St r i ng cadena1 = Hol aATodos;
St r i ng cadena2 = Hol aMundo;
St r i ng cadena3 = Requet eHol a;
}
}

Lo primero es establecer Breakpoints. Esto son marcas en ciertas lneas de
cdigo, que indican el punto donde debe detenerse la ejecucin cuando este-
mos depurando (debugging). Para ello hacemos doble clic en el margen izquier-
do de la lnea elegida para que aparezca la marca:

Figura 9. Breakpoints

Unidad didctica 1
INICIACIN A JAVA
48
A continuacin, ejecutamos el programa en modo debug, seleccionando la op-
cin de men Run > Debug. Nos avisa de que abrir la perspectiva Debug.

Figura 10. Men para seleccionar modo debug
Observamos que la ejecucin se interrumpe al llegar al breakpoint que habamos
marcado. La lnea aparece en verde en el panel de la perspectiva Debug.

Figura 11. Muestra de interrupcin del breakpoint
Con los botones de la parte superior podemos controlar la depuracin. Pode-
mos avanzar una lnea, reanudar la ejecucin, terminar la ejecucin, etc. En el
panel Variables podemos ver el valor que tienen en cada momento las variables
de nuestro programa.
6.3. ABRIR UN PROYECTO DE LA PLATAFORMA
En Eclipse se pueden abrir y manejar proyectos existentes, que no hayamos
creado nosotros. Para ello, debemos usar la opcin File > Import, y seleccionar
el tipo General/Existing Projects into Workspace.
49


Unidad didctica 1
INTRODUCCIN A JAVA
En la siguiente ventana buscaremos el directorio del proyecto a importar. Eclip-
se comprobar si es una carpeta de proyecto vlida. Podemos copiar su conte-
nido a nuestro workspace, aunque en general no es necesario, puede mantener-
se en su ubicacin actual.

Figura 12. Ventana de bsqueda de directorio
Pulsando Finish ya tendremos el proyecto listo para trabajar con l. Ser im-
portante marcar la opcin de Copy projects into workspace, de este se co-
piarn los proyectos al espacio de trabajo y no tendremos problemas si elimi-
namos la carpeta de origen.
6.4. COMANDOS DE TECLADO TILES
Vamos a ver algunos comandos que nos ayudarn al uso de eclipse como pla-
taforma de desarrollo:
Organizar imports: Control + Shift + O. Con este comando eclipse se
encargar de cargarnos ficheros que necesitemos importar.
Buscar Fichero en el workspace -> Control + Shift + R. Aparecer un
dialogo donde pondremos el nombre del fichero y nos buscar en todo
el workspace por l.

Unidad didctica 1
INICIACIN A JAVA
50
F3 sobre un mtodo, clase, variable -> Acude a su definicin.
Lanzar un proyecto -> Control + F11
Refactorizar el nombre de un mtodo o variable -> Alt + Control + R.
Autocompletar -> Control + Espacio
NOTA:
Los usuario de Mac Os X debern cambiar Control por Comando,
los comandos para GNU/Linux son los mismos.
51


Unidad didctica 1
INTRODUCCIN A JAVA
7. ESTRUCTURAS DE ALMACENAMIENTO
7.1. ARRAYS
Un array es una zona de almacenamiento continuo, que contiene una serie de
elementos del mismo tipo. Desde el punto de vista lgico un array se puede ver
como un conjunto de elementos ordenados en fila.

Figura 13. Aqu podemos ver un array unidimiensional de 10 elementos
Es una estructura de almacenamiento predefinida por Java ya que se utiliza el
operador new para crearla y nos permite el almacenamiento y recorrido de los
elementos que contenga.
7.1.1. DECLARACIN
En Java un array se declara de las siguientes formas:
i nt [ ] nombr eAr r ayA;
i nt nombr eAr r ayB[ ] ;

Ambas declaraciones son equivalentes.
La primera lnea declara un array de enteros de nombre nombreArrayA.

Unidad didctica 1
INICIACIN A JAVA
52
Es decir, nombreArrayA es una referencia a una estructura donde se
pueden guardar muchos valores del tipo int.
La segunda lnea declara que cada elemento de la forma nombreA-
rrayB[] es del tipo int.
En una estructura de almacenamiento Array podemos encontrar:
Tipos primitivos (int, double, etc.).
Cualquier clase (Alumno, Coche, String, etc.).
7.1.2. CREACIN
Los arrays son objetos, por lo que para poder trabajar con ellos se necesita en pri-
mer lugar crear el objeto. La creacin de los arrays se hace de la siguiente forma:
nombr eAr r ayA = new i nt [ 30] ;
nombr eAr r ayB = new i nt [ 90] ;

El array nombreArrayA permite guardar 30 nmeros enteros
El array nombreArrayB permite guardar 90 nmeros enteros.
Al crear el array se inicializa a 0 para ser de tipo int. Si usamos cualquier otro
tipo primitivo se inicializara a false para los boolean, \u0000 para los caracteres
y null para las referencias a objetos.
Se puede eliminar lneas de cdigo haciendo la declaracin e instancia a la vez:
i nt [ ] nombr eAr r ayA = new i nt [ 30] ;
i nt nombr eAr r ayB[ ] = new i nt [ 90] ;

7.1.3. INICIALIZACIN
Es posible inicializar los elementos del array a la vez que se crean de la siguiente forma:
doubl e[ ] ar r ayDeci mal es = {1. 1, 2. 2, 3. 3, 4. 4, 5. 5, 6. 6,
7. 7, 8. 8, 9. 9, 10. 0 };
St r i ng[ ] meses = {" Ener o" , " Febr er o" , " Mar zo" , " Abr i l " , " Ma-
yo" , " J uni o" , " J ul i o" , " Agost o" , " Sept i embr e" , " Oct ubr e" , " No-
vi embr e" , Di ci embr e};

53


Unidad didctica 1
INTRODUCCIN A JAVA
En el primer caso, arrayDecimales se ha declarado como un array de 10
nmeros decimales.
En el segundo caso, el array meses se ha creado con doce objetos de
la clase String, cuyo valor inicial son los meses del ao.
7.1.4. ACCESO A LOS VALORES
Cuando se desea acceder a los valores de un array de tamao n se debe tener
en cuenta:
El primer elemento se encuentra en la posicin 0.
El ltimo se encuentra en la posicin n - 1.
Cualquier intento de hacer referencia a un elemento que no est entre 0
y n - 1 genera una excepcin.
Para acceder a un elemento utilizaremos el valor entre corchetes, de esta forma
se puede escribir:
Syst em. out . pr i nt l n ( El pr i mer mes del ao es: " + meses [ 0] ) ;
7.1.5. TAMAO DE UN ARRAY
Para saber el nmero de elementos de un array se utiliza su atributo length, de
esta manera:
Syst em. out . pr i nt l n ( El ar r ay meses t i ene " + meses. l engt h
+ " el ement os. ") ;

Ejemplo
Escriba un procedimiento de nombre mostrarMeses, que reciba por parmetro
un array de cadenas y muestre sus valores por pantalla separados por comas.
Solucin:

publ i c cl ass Ao{
publ i c st at i c voi d most r ar Meses ( St r i ng[ ] meses) {
f or ( i nt i = 0; i <= meses. l engt h- 1; i ++) {
Syst em. out . pr i nt ( meses[ i ] + " , " ) ;
}

Unidad didctica 1
INICIACIN A JAVA
54
}
publ i c st at i c voi d mai n( St r i ng[ ] ar gs) {
St r i ng[ ] meses = {"Ener o", "Febr er o", "Mar zo", "Abr i l ",
"Mayo", "J uni o", "J ul i o", "Agost o", "Sept i embr e", "Oct ubr e",
"Novi embr e", Di ci embr e};
Ao. most r ar Meses( meses ) ;
}
}

7.2. ARRAYS N-DIMENSIONALES
7.2.1. DECLARACIN Y CREACIN
Para crear un array de dos dimensiones lo haremos de la siguiente manera:
i nt [ ] [ ] t abl er o;

Al ser de dos dimensiones hay que indicar los tamaos de las dos.
Ejemplo
Para declarar un tablero de 5 por 5 elementos se hara de la siguiente forma:
i nt [ ] [ ] t abl er o = new i nt [ 5] [ 5] ;
Los arrays pueden tener ms de dos dimensiones:
i nt [ ] [ ] [ ] pi r ami de = new i nt [ 5] [ 5] [ 5] :
Este array sera de tres dimensiones.
7.2.2. ACCESO A LOS VALORES
Igual que en los arrays de una dimensin, para acceder a cualquier variable del
array de dos dimensiones hay que indicar en qu posicin de cada una de las
dimensiones se encuentra la variable que se quiere recuperar.
t abl er o[ 4] [ 4] = 30 ;
55


Unidad didctica 1
INTRODUCCIN A JAVA
7.2.3. TAMAO DEL ARRAY
El atributo length nos permita conocer el tamao de un array y cada dimensin
tiene su propio tamao.
Se puede utilizar el atributo length de la siguiente forma:
/ / t amao de l a pr i mer a di mensi n, es deci r 5
t amaoPr i mer aDi mensi on = t abl a. l engt h;
/ / t amao de l a pr i mer a f i l a, es deci r 5
t amaoSegundaDi mensi on = t abl a[ 0] . l engt h;
7.2.4. ARRAY DE DOS DIMENSIONES NO RECTANGULARES
El tablero declarado en la seccin anterior tena un tamao de 5 x 5, es decir, 25
elementos. Esta tabla est compuesta por 5 arrays, donde cada uno de ellos es
un array de 5 variables de tipo int. Sin embargo, cada uno de los 5 arrays podra
haberse creado con arrays de distinto tamao:
i nt [ ] [ ] t abl er o = new i nt [ 5] [ ] ;
t abl er o [ 0] = new i nt [ 2] ;
t abl er o [ l ] = new i nt [ 3] ;
t abl er o [ 2] = new i nt [ 4] ;
t abl er o [ 3] = new i nt [ 5] ;
Ejemplo
Escriba un procedimiento de nombre rellenarMatriz 5 x 5 que reciba una matriz
de enteros por parmetro y rellene con un contador de 1 a N.






Unidad didctica 1
INICIACIN A JAVA
56
Solucin:
publ i c cl ass Mat r i ces{
pr i vat e st at i c i nt cont ador = 1 ;
publ i c st at i c voi d r el l enar Mat r i z ( i nt [ ] [ ] mat r i z) {
i f ( mat r i z == nul l ) {
Syst em. out . pri nt l n( "La mat ri z debe est ar i ni ci al i zada. ") ;
}el se{
f or ( i nt i = 0; i < mat r i z. l engt h; i ++) {
f or ( i nt j = 0; j < mat r i z[ i ] . l engt h; j ++) {
mat r i z[ i ] [ j ] = cont ador ;
Syst em. out . pr i nt l n( " Mat r i z " + i +" " + j +" " +
mat r i z[ i ] [ j ] ) ;
cont ador ++ ;
}
}
}
}
publ i c st at i c voi d mai n ( St r i ng[ ] ar gs) {
i nt [ ] [ ] t abl er o = new i nt [ 5] [ 5] ;
Mat r i ces. r el l enar Mat r i z( t abl er o) ;
}
}
57


Unidad didctica 1
INTRODUCCIN A JAVA
CONCLUSIONES
Dirgete a nosotros siempre que quieras; te ayudamos para
conseguir tu meta.


Hemos aprendido cmo surgi Java y la filosofa que sigue, junto con las venta-
jas que tiene respecto a otros lenguajes gracias a la ejecucin de programas a
travs de su mquina virtual.
Tambin hemos visto los aspectos generales de la programacin en Java y los
conocimientos de la estructura de sus programas, (como Eclipse) y la sintaxis
de programacin.

Unidad didctica 1
INICIACIN A JAVA
58
RECAPITULACIN
Hemos aprendido qu es Java y su filosofa de programa una vez y eje-
cuta donde quieras. Esto es debido a que Java es un lenguaje multipla-
taforma que permite programar y hacer pruebas en cualquier ordenador,
y posteriormente poder ejecutar nuestro programa en cualquier otro.
Para el desarrollo de programas con Java existe unos entornos de de-
sarrollo (IDEs) que nos facilitan la edicin, compilacin y ejecucin de
programas, adems de incorporar componentes en Java de manera
grfica en vez de tener que crearlos desde cdigo. Esto ayuda al des-
arrollador y reduce su tiempo de desarrollo en gran medida.
En nuestro curso estamos trabajando con Eclipse.
Se ha trabajado los fundamentos del lenguaje Java como:
Tipo de datos.
Operadores.
Estructuras de seleccin.
Estructuras iterativas.
Procedimientos y funciones.
Estructuras de almacenamiento estticas:
Arrays

You might also like