Fundamentos de Java 2
Fundamentos de Java 2
Fundamentos de Java 2
I n t ro d u c c i ó n a l
l e n g u a j e J ava
1
CAPACIDAD:
}}Reconocer los conceptos básicos del lenguaje Java.
}}Configurar e instalar las aplicaciones Java en una computadora.
}}Reconocer, diferenciar e instalar los diferentes IDE para las aplicaciones Java.
CONTENIDO:
1.1. Introducción
1.2. Orígenes del lenguaje Java
1.3. Los programas en Java
1.4. Evolución de la plataforma Java
1.5. Tipos de aplicaciones Java
1.6. Requisitos para la instalación de Java
1.7. El JDK 7 y su instalación
1.8. El IDE JCreator y su instalación
1.9. El IDE NetBeans y su instalación
1.10. l IDE JDeveloper 11g y su instalación
CAP. 1: Introducción al lenguaje java 13
1.1. Introducción
Muchos de nosotros hemos escuchado acerca de Java sin saber que probablemente nuestras vidas
están girando alrededor de este término, veamos un ejemplo simple; si usted tiene un celular en sus
manos las aplicaciones con las que cuenta pueden ser Java, pero a qué se debe que Java esté en
aparatos de uso diario existiendo otros lenguajes como Visual Basic, lo que diferencia a Java de otras
aplicaciones es la portabilidad con la que cuentan sus aplicaciones. Otra característica favorable de
Java es que cuenta con un texto plano lo que hace menos pesadas sus aplicaciones y que estas se
puedan ejecutar en aparatos de poca memoria.
Java, en la actualidad, ha revolucionado la programación y ha promovido un código derivado de C y C++
que en corto tiempo ha tenido mucho éxito en las tecnologías de información debido a su filosofía y la
forma de operar de sus aplicaciones cliente-servidor, tanto en plataforma como en la web. Por tanto,
son muchas las empresas que están apostando por Java como un potente lenguaje de programación
duradero en el tiempo y 100% confiable.
En este primer capítulo se verá a Java desde una perspectiva global, conociendo su historia, sus
principales características y cómo se trabaja la programación orientada a objetos en Java.
Inicialmente, Java no fue acogido por las empresas de electrodomésticos, siendo así que en el año
1995 Java se introduce como lenguaje de programación para computadoras, la incorporación
de un intérprete Java en la versión 2.0 del navegador Netscape hizo de Java un lenguaje potente
revolucionando la internet.
Java se creó como una herramienta de programación para ser usada en un proyecto de set-top-box
en una pequeña operación denominada “The Green Project” en Sun Microsystems en el año 1991. El
14 DESARROLLO DE APLICACIONES CON JAVA USANDO JCREATOR, JDEVELOPER Y NETBEANS
equipo (Green Team), compuesto por trece personas y dirigido por James Gosling, trabajó durante 18
meses en Sand Hill Road en Menlo Park en su desarrollo.
Java como lenguaje se le denominó inicialmente “Oak” del castellano roble, luego pasó a denominarse
Green tras descubrirse que “Oak” era ya una marca comercial registrada en Estados Unidos para
adaptadores de tarjetas gráficas y finalmente, se renombró a Java.
Para el nombre que quedó registrado al final se han escrito muchas hipótesis, sobre el término algunos
señalan que podría tratarse de las iniciales de sus creadores: James Gosling, Arthur Van Hoff, y Andy
Bechtolsheim. Aunque la hipótesis que más fuerza tiene es la que Java debe su nombre a un tipo de
café disponible en la cafetería cercana a la empresa Sun, de ahí que el ícono de Java sea una taza de
café caliente. Un pequeño indicio que da fuerza a esta teoría es que los 4 primeros bytes (el número
mágico) de los archivos .class que genera el compilador son en hexadecimal, 0xCAFEBABE. Otros
afirman que el nombre fue sacado al parecer de una lista aleatoria de palabras. A pesar de todas estas
teorías, ninguna ha podido ser comprobada.
La promesa inicial de Gosling era: “Write Once, Run Anywhere” (“escríbelo una vez, ejecútalo en
cualquier lugar”), se cumplió al poder Java proporcionar un lenguaje independiente de la plataforma y
un entorno de ejecución (la JVM) ligero y gratuito para las plataformas más populares. Es decir, que los
binarios (bytecode) de las aplicaciones Java pudiesen ejecutarse en cualquier plataforma.
Partiendo del paradigma orientado a objetos, el lenguaje C++ es capaz de interpretar dos estilos de
programación como son la programación estructurada y la orientada a objetos, a esta característica se
le llama programación hacia atrás; este término no es un estereotipo de Java, puesto que este programa
trabaja totalmente orientado a objetos sin perder la esencia del paradigma. Hay que reconocer que
Java hereda de C++ muchas características como el punto y coma al finalizar una instrucción o su forma
de declarar una variable; si usted programó en C++ se sentirá familiarizado con Java.
Ahora, comparar dos lenguajes de programación resulta un tanto difícil si comparamos que ambos
lenguajes tienen un objeto parecido, el cual es el desarrollo de aplicaciones.
Veamos algunas similitudes entre los dos lenguajes:
}}Presentan un lenguaje enriquecido de instrucciones que hacen a los algoritmos más complejos
sencillos de expresarlos.
}}Presentan consistencia y falta de ambigüedad en sus instrucciones.
}}Presentan un correcto control sobre los valores multidimensional; así tenemos los arreglos,
estructuras y las clases.
}}Presentan un desarrollo de aplicaciones basado en la programación modular, permitiendo que la
programación se desarrolle en componentes independientes que trabajan bajo un mismo fin.
}}Presentan un soporte de interacción con el entorno, es decir, proporcionan entrada y salida a sus
aplicaciones.
}}Presentan portabilidad de sus aplicaciones haciendo que estas puedan ejecutarse en cualquier
plataforma de trabajo.
CAP. 1: Introducción al lenguaje java 15
}}En C++ la potencia de sus aplicaciones es el uso adecuado de los punteros que permiten acceder a la
memoria volátil de la computadora (RAM) que en muchas ocasiones presentaba errores de colisión
en la memoria. Java no presenta esta característica, por tanto evita todo acceso a la memoria volátil.
El JDK de Java proporciona métodos de acceso a la memoria de manera efectiva y controlable.
}}Para mantener un valor entre procesos C++ usa variables globales, mientras que en Java lo único
global es el nombre de sus clases y las variables que necesite hacerlas globales se las declarara
dentro de la clase, pero al exterior de sus métodos.
}}Java no usa la sentencia GoTo, en vez de ello usa break o continue para cortar o continuar alguna
instrucción respectivamente. Goto hace que el código sea como un “código spaghetti” lleno de
saltos, vueltas y revueltas. En Java se espera un orden sin saltos, en cambio; GoTo es como un
canguro pegando saltos.
Fig. 1.1
}}Las conversiones inseguras de C++ se realizan por medio de los moldeados de tipo (type Casting), el
cual permite cambiar el tipo de un puntero. Java hace una comparación en tiempo de ejecución de
la compatibilidad dejando al programador controlar dichas excepciones.
Java C++
Es totalmente portable. Parcialmente portable
Controla la memoria dinámica, el garbage collection y Memoria automática gestionada por le RTS, memoria
no tiene punteros. dinámica gestionada por el programador.
Normalmente son 5 las etapas por la que un programa en Java debe pasar, estas son: Edición,
Compilación, Carga, Verificación y Ejecución; de estos 5 mínimamente podríamos nombrar a Edición,
Compilación y Ejecución.
1. Edición: en esta etapa el programador digita las instrucciones Java en un editor en el cual podrá
corregir alguna parte del código si fuera necesario o grabar el archivo cuando determine que el
código es el correcto, cuando esto suceda se creará el archivo con extension .java.
Editor de Codigo
public class raizN
{
public static void main(String[] args){
int n=8;
int base=3;
double raiz=Math.pow(n,1.0/base); raizN.java
System.out.println("El numero es:"+n);
System.out.println("La base es:"+base);
System.out.println("La raiz es:"+raiz);
}
}
Para el siguiente caso hemos editado un código Java de consola que permite calcular la raíz N de
un número entero positivo. La clase principal se llama raizN y tiene un método void main que
permitirá operar las instrucciones. Al final se guardó el archivo en una unidad de la computadora
con el mismo nombre de la clase y con la extensión .java.
2. Compilación: en esta etapa de transición se crean códigos de bytes y al ser guardados se crea el
archivo con el mismo nombre del archivo Java pero con extensión .class.
CodeByte
03 3b 04 00 0l 1a
05 1b a4 01 1h 5a
b1 32 l4 0f 02 3a
3b 3b 14 1f 0l 56
02 78 l4 00 02 2a raizN.class
l3 h2 l4 f1 1l 84
01 11 a4 d0 1l 4m
ff 1b 04 a0 02 27
A partir de la compilación del archivo Java y creado el archivo .class puede ser incrustado en una página
web como un applet.
CAP. 1: Introducción al lenguaje java 17
3. Carga: en esta etapa los códigos de bytes generados son enviados a la memoria de la computadora
por medio del cargador clases obtenidos desde la unidad donde se guardaron los archivos java y
class.
Memoria Principal
Cargador de .
raizN.java clases .
.
4. Verificación: en esta etapa se verifica que el código de bytes sea válido y no contenga violaciones
de seguridad Java, enviando el código a un intérprete que tendrá por misión hacer que este código
sea entendible por la computadora.
5. Ejecución: en este etapa el código de bytes depurado es enviado a la Máquina Virtual de Java
(JVM) para su ejecución y visualización en el entorno que el usuario crea conveniente de aquí se
desprende el termino de portabilidad ya que dependiendo de la JVM podrá ejecutar la aplicación
en una u otra plataforma.
Fig. 1.2
Aplicaciones GUI
Son aplicaciones que no necesitan de un navegador ya que se ejecutan como una aplicación de
escritorio. La mayoría de las aplicaciones Java están implementadas por una Interfaz Gráfica de
Usuario (GUI), por su no exposición de los datos en la web y ser una aplicación interna dentro de una
organización.
Fig. 1.3
20 DESARROLLO DE APLICACIONES CON JAVA USANDO JCREATOR, JDEVELOPER Y NETBEANS
Los applets hacen referencia al archivo compilado .class, si tenemos una aplicación compilada llamada
raizN.class entonces el código HTML sería de la siguiente manera:
<html>
<head>
<title>Aplicacion de Prueba</title>
</head>
<body>
Raiz N
<APPLET>
CODE="raizN.class"
WIDTH=200
HEIGHT=70
</APPLET>
</body>
</html>
Aplicaciones Servlets
Son objetos de Java que se ejecutan dentro de un servidor web, como por ejemplo TomCat que los
reutiliza, recibe peticiones mediante una URL y genera respuestas al Cliente. Genera páginas web
dinámicas a partir de los valores que sean enviados al servidor como se muestra en la Fig.1.4.
Fig. 1.4
CAP. 1: Introducción al lenguaje java 21
Aplicaciones JavaBeans
Es un modelo de componentes que se usa para encapsular varios objetos en otro único. Se define
como un componente de software reutilizable que se puede administrar desde una herramienta de
construcción, un ejemplo de código JavaBean es el que sigue:
public VendedorBean() {}
Requerimiento Especificación
Sistema Operativo Windows 8, 7, Vista SP2, XP S3
Windows Server 2008, 2012
Java SE7 es la versión más actualizada de Java, la cual contiene muchas características nuevas dentro
del lenguaje. Veamos algunas:
Debemos tener en cuenta que para ejecutar aplicaciones Java en una computadora personal se
necesitan de las siguientes aplicaciones:
Editor del Lenguaje: son aplicaciones que permiten editar un código Java, es decir, solo podrá digitar el
código pero no podrá compilarlo ni ejecutarlo. Podríamos nombrar las siguientes aplicaciones:
http://notepad-plus-plus.org/
NotePad++
CAP. 1: Introducción al lenguaje java 23
EditPlus
http://www.eng.auburn.edu/grasp/
JGrasp
http://www.bluej.org/download/download.html
BlueJ
24 DESARROLLO DE APLICACIONES CON JAVA USANDO JCREATOR, JDEVELOPER Y NETBEANS
Compilador Java
Como ya habíamos comentado líneas arriba, los compiladores generan un archivo .Class que es enviado
a la memoria de la computadora en código de Bytes llamado ByteCode.
Fig. 1.5
Como se muestra en la Fig. 1.5 el código es compilado y enviado a los diferentes entornos por medio
de la JVM.
Librerías
Es un apoyo al desarrollo de las aplicaciones en Java ofreciendo métodos agrupados que permiten
agilizar el desarrollo y relacionarse con sistemas externos como las API’s de acceso a datos o las
bibliotecas de Interfaz de Usuario como la AWT y la Swing y API’s para la captura, procesamiento y
reproducción de audio en Java.
CAP. 1: Introducción al lenguaje java 25
Ahora se estará preguntando, ¿cuánto software descargaré para poder tener el Java en mi computadora?
Pues la respuesta se puede resumir a solo dos aplicaciones:
Aplicación Contenido
JDK 7 (Java Development Kit) Compilador Java
Máquina Virtual de Java
Librerías
http://www.oracle.com/technetwork/es/java/javase/downloads/index.html
Fig. 1.6
En la Fig. 1.6 se muestra la sección de descargas de Java desde la página oficial de Oracle; como notará
Java ya no pertenece a la compañia Sun. Para descargar el JDK seleccionaremos Download del Java
Platform (JDK) como lo muestra la Fig.1.7
Fig. 1.7
26 DESARROLLO DE APLICACIONES CON JAVA USANDO JCREATOR, JDEVELOPER Y NETBEANS
Fig. 1.8
Luego debe guardar el archivo en su Unidad de Disco estable para poder instalarlo desde allí como lo
muestra la Fig. 1.9:
Fig. 1.9
CAP. 1: Introducción al lenguaje java 27
Una vez finalizada la descarga del archivo JDK se procederá con la instalación, en la Fig. 1.10 presione
Next>.
Fig. 1.10
En la Fig. 1.11 se muestra los objetos que se instalarán, si lo desea aquí puede cambiar la ubicación de
la instalación presionando el botón Change…, luego presione Next>.
Fig. 1.11
28 DESARROLLO DE APLICACIONES CON JAVA USANDO JCREATOR, JDEVELOPER Y NETBEANS
En la Fig. 1.12 se muestra el avance de la instalación, en esta ventana no se selecciona ningún elemento.
Fig. 1.12
En la Fig. 1.13 se muestra la ventana de selección de destino de los archivos JRE7 para lo cual no es
necesario cambiarlos, pero si lo desea puede seleccionar Change, pero recuerde que no es necesario
cambiarlos.
Fig. 1.13
CAP. 1: Introducción al lenguaje java 29
Fig. 1.14
Finalmente, si todo es correcto se debe mostrar la ventana que muestra la Fig. 1.15. Para finalizar la
instalación presione Close.
Fig. 1.15
30 DESARROLLO DE APLICACIONES CON JAVA USANDO JCREATOR, JDEVELOPER Y NETBEANS
Tal como lo muestra la Fig. 1.16 primero debe seleccionar Accept License Agreement, desde la
plataforma Windows seleccione exe 88.94MB y proceda con la instalación.
Fig. 1.16
Fig. 1.17
Una vez descargado procederemos a instalarlo, presionando Next> desde la Fig. 1.18.
Fig. 1.18
32 DESARROLLO DE APLICACIONES CON JAVA USANDO JCREATOR, JDEVELOPER Y NETBEANS
Fig. 1.19
Seguidamente presionamos Next, a menos que desee cambiar la ubicación de los archivos de
instalación para esto presione Browse…, finalmente presione Next>.
Fig. 1.20
CAP. 1: Introducción al lenguaje java 33
Siga los pasos del asistente de instalación hasta llegar a la ventana mostrada en la Fig. 1.21, presione
Finish para empezar a usar JCreator.
Fig. 1.21
Por ser la primera vez que se instala este software se muestra la siguiente ventana:
Fig. 1.22
34 DESARROLLO DE APLICACIONES CON JAVA USANDO JCREATOR, JDEVELOPER Y NETBEANS
Para lo cual solo presione Finish y se mostrará la pantalla inicial del JCreator como lo muestra la Fig.
1.23.
Fig. 1.23
Fig. 1.23
Se descargará la versión más actualizada hasta el momento de la edición de este material, seleccione
el idioma del IDE (en este caso es English), la plataforma de trabajo Windows y finalmente presione
Donwload Free 240MB para tener toda la tecnología de NetBeans completa (ver fig. 1.24).
2
3
Fig. 1.24
36 DESARROLLO DE APLICACIONES CON JAVA USANDO JCREATOR, JDEVELOPER Y NETBEANS
Fig. 1.25
6
7
Fig. 1.26
CAP. 1: Introducción al lenguaje java 37
Fig. 1.27
10
Fig. 1.28
38 DESARROLLO DE APLICACIONES CON JAVA USANDO JCREATOR, JDEVELOPER Y NETBEANS
11
Fig. 1.29
12
Fig. 1.30
CAP. 1: Introducción al lenguaje java 39
Fig. 1.31
Fig. 1.32
40 DESARROLLO DE APLICACIONES CON JAVA USANDO JCREATOR, JDEVELOPER Y NETBEANS
Fig. 1.33
Fig. 1.34
CAP. 1: Introducción al lenguaje java 41
Fig. 1.35
Fig. 1.36
Impreso en los Talleres Gráficos de
Surquillo
719-9700