You are on page 1of 8

Introduccin

El lenguaje Java es a la vez compilado e interpretado. Con el compilador se convierte el cdigo


fuente que reside en archivos cuya extensin es .java, a un conjunto de instrucciones que recibe
el nombre de bytecodes que se guardan en un archivo cuya extensin es .class. Estas
instrucciones son independientes del tipo de ordenador. El intrprete ejecuta cada una de estas
instrucciones en un ordenador especfico (Windows, Macintosh, etc). Solamente es necesario,
por tanto, compilar una vez el programa, pero se interpreta cada vez que se ejecuta en un
ordenador.

Cada intrprete Java es una implementacin de la Mquina Virtual Java (JVM).


Los bytecodes posibilitan el objetivo de "write once, run anywhere", de escribir el programa una
vez y que se pueda correr en cualquier plataforma que disponga de una implementacin de la
JVM. Por ejemplo, el mismo programa Java puede correr en Windows 98, Solaris, Macintosh,
etc.
Java es, por tanto, algo ms que un lenguaje, ya que la palabra Java se refiere a dos cosas
inseparables: el lenguaje que nos sirve para crear programas y la Mquina Virtual Java que sirve
para ejecutarlos. Como vemos en la figura, el API de Java y la Mquina Virtual Java forman
una capa intermedia (Java platform) que asla el programa Java de las especificidades del
hardware (hardware-based platform).

La Mquina Virtual Java


La Mquina Virtual Java (JVM) es el entorno en el que se ejecutan los programas Java, su
misin principal es la de garantizar la portabilidad de las aplicaciones Java. Define
esencialmente un ordenador abstracto y especifica las instrucciones (bytecodes) que este
ordenador puede ejecutar. El intrprete Java especfico ejecuta las instrucciones que se guardan
en los archivos cuya extensin es .class. Las tareas principales de la JVM son las siguientes:

Reservar espacio en memoria para los objetos creados


Liberar la memoria no usada (garbage collection).
Asignar variables a registros y pilas
Llamar al sistema husped para ciertas funciones, como los accesos a los dispositivos
Vigilar el cumplimiento de las normas de seguridad de las aplicaciones Java

Esta ltima tarea, es una de las ms importantes que realiza la JVM. Adems, las propias
especificaciones del lenguaje Java contribuyen extraordinariamente a este objetivo:

Las referencias a arrays son verificadas en el momento de la ejecucin del programa


No hay manera de manipular de forma directa los punteros
La JVM gestiona automticamente el uso de la memoria, de modo que no queden huecos.
No se permiten realizar ciertas conversiones (casting) entre distintos tipos de datos.

Por ejemplo, cuando el navegador encuentra una pgina web con un applet, pone en marcha la
JVM y proporciona la informacin que aparece en la etiqueta <APPLET > ... </APPLET>. El
cargador de clases dentro de la JVM ve que clases necesita el applet. Dentro del proceso de
carga, las clases se examinan mediante un verificador que asegura que las clases contienen
cdigo vlido y no malicioso. Finalmente, se ejecuta el applet.

El lenguaje Java
El lenguaje Java no est diseado solamente para crear applets que corren en la ventana del
navegador. Java es un lenguaje de propsito general, de alto nivel, y orientado a objetos.
Java es un lenguaje de programacin orientado a objetos puro, en el sentido de que no hay
ninguna variable, funcin o constante que no est dentro de una clase. Se accede a los miembros
dato y las funciones miembro a travs de los objetos y de las clases. Por razones de eficiencia,
se han conservado los tipos bsicos de datos, int, float, double, char, etc, similares a los del
lenguaje C/C++.
Los tipos de programas ms comunes que se pueden hacer con Java son los applets (se ejecutan
en el navegador de la mquina cliente) y las aplicaciones (programas que se ejecutan
directamente en la JVM). Otro tipo especial de programa se denomina servlet que es similar a
los applets pero se ejecutan en los servidores Java.
La API de Java es muy rica, est formada un conjunto de paquetes de clases que le
proporcionan una gran funcionalidad. El ncleo de la API viene con cada una de las
implementaciones de la JVM:

Lo esencial: tipos de datos, clases y objetos, arrays, cadenas de caracteres (strings),


subprocesos (threads), entrada/salida, propiedades del sistema, etc.

Applets

Manejo de la red (networking)

Internacionalizacin

Seguridad

Componentes (JavaBeans)

Persistencia (Object serialization)

Conexin a bases de datos (JDBC)

Java proporciona tambin extensiones, por ejemplo define un API para 3D, para los servidores,
telefona, reconocimiento de voz, etc.

La primera aplicacin
Los programas de este curso han sido creados con el Entorno Integrado de Desarrollo (IDE)
NetBeans, aunque el Curso de Java en s mismo, es independiente de la herramienta de
programacin. El aprendiz interesado en este curso puede emplear el IDE de su preferencia.
Vamos a ver mediante una serie de imgenes los pasos para crear una aplicacin que corre en la
consola, una ventana DOS en el escritorio de Windows 7. Estas aplicaciones solamente se
crearn durante el proceso de aprendizaje del lenguaje Java.
Empezamos con una serie de ejercicios para aquellos que estn comenzando desde cero con el
lenguaje Java y tampoco tienen experiencia con ningn otro lenguaje de programacin.
En estos ejercicios bsicos iniciales se realizan las siguientes instrucciones: declarar variables,
asignarles un valor, operar con ellas y mostrar resultados por pantalla.
Estos ejercicios son todos de estructura secuencial, es decir, no hay condiciones ni bucles.
Tampoco se lee nada por teclado. El objetivo es familiarizarse con la declaracin de variables y
practicar la salida por consola utilizando los mtodos print y println.

Crear un nuevo proyecto


Ejercicio bsico inicial 1:
Escribe un programa Java que realice lo siguiente: declarar una variable N de tipo int, una
variable A de tipo double y una variable C de tipo char y asigna a cada una un valor.
A continuacin muestra por pantalla:
El valor de cada variable.
La suma de N + A
La diferencia de A - N
El valor numrico correspondiente al carcter que contiene la variable C.
Si por ejemplo le hemos dado a N el valor 5, a A el valor 4.56 y a C el valor a, se debe mostrar
por pantalla:
Variable N = 5
Variable A = 4.56
Variable C = a
5 + 4.56 = 9.559999999999999
4.56 - 5 = -0.4400000000000004
Valor numrico del carcter a = 97

Implementacin con NetBeans


Para crear un proyecto dar clic en la opcin File, luego clic en la opcin New Project

En la opcin Categories escoger Java y en Projects escoger Java Application. Luego dar clic en
el botn Next >

Damos el nombre a nuestro proyecto, verificamos que este activada la opcin Create Main
Class y luego damos clic en el botn Finish.

Observe que se genera el proyecto con un archivo java llamado Ejercicio 1.java que al darle
doble clic a la derecha nos muestra el cdigo que se ha generado durante la creacin del
proyecto:
Si ven el cdigo se ha generado un paquete para el ejercicio, una clase publica con el nombre
Ejercicio 1 y una clase main que nos va a permitir ejecutar nuestros programas en esta primera
unidad del curso.

Ahora si empecemos a programar el ejercicio, el cual dice:


Declarar una variable N de tipo int, una variable A de tipo double y una variable C de tipo char y
asigna a cada una un valor.

Tal como lo pide declaramos las


variables de acuerdo al tipo y asignamos
a cada una de ellas un valor

Luego nos dice que mostremos por pantalla el valor de cada variable.
La suma de N + A
La diferencia de A - N
El valor numrico correspondiente al carcter que contiene la variable C.
El cdigo System.out.println es el que nos va a mostrar la salida o resultados del programa:

Guardamos los cambios y corremos nuestro ejercicio 1, para ello damos clic en la opcin Run y luego
clic en Run Project.

Otra forma es dar clic directamente en el botn Run.

O simplemente pulsando la tecla F6


Observe que en la parte baja de NetBeans obtenemos los resultados tal como los pide el
ejercicio.

Ejercicio bsico inicial 2:


Escribe un programa Java que realice lo siguiente: declarar dos variables X e Y de tipo int, y asigna a
cada una un valor. A continuacin muestra por pantalla:
El valor de cada variable.
La suma X + Y
La diferencia X Y
El producto X * Y
El cociente X / Y
El resto X % Y

Realizamos los mismos pasos que usamos en la creacin del Ejercicio 1, para lo cual debe
quedar configurado de la siguiente manera:

Empezamos a programar el ejercicio que nos dice declarar dos variables X e Y de tipo int, y asigna
a cada una un valor, observe:

Luego nos dice que muestre por pantalla


El valor de cada variable.
La suma X + Y
La diferencia X Y
El producto X * Y
El cociente X / Y
El resto X % Y

Veamos cmo se programa:

Ejecutamos o corremos el programa con F6 y Obtenemos: