You are on page 1of 9

INTRODUCCIN A JAVA

PROGRAMACIN ORIENTADA A
OBJETOS
PROFESORA CARLA ANGULO LARENAS

2016

QU ES JAVA? CONCEPTO DE PROGRAMACIN ORIENTADA A OBJETOS


Java es un lenguaje de programacin orientado a objetos que se populariz a partir
del lanzamiento de su primera versin comercial de amplia difusin, la JDK 1.0 en 1996.
Actualmente es uno de los lenguajes ms usados para la programacin en todo el mundo.
El lenguaje C fue desarrollado en la dcada de los 70 y constituye un lenguaje muy
robusto usado como ncleo del sistema operativo Unix. C no admite la orientacin a objetos y est
considerado un lenguaje poco amigable desde el punto de vista de que su sintaxis, elementos de
programacin que emplea (manejo directo de memoria) y otras cuestiones hacen que sea un
lenguaje difcil de aprender. C++ fue una evolucin de C desarrollada en los aos 80. Introdujo el
diseo orientado a objetos, pero manteniendo la compatibilidad con C. Esto supona que C++
permitiera tanto el uso de la programacin estructurada tradicional como la programacin
orientada a objetos. Adems C++ mantuvo ciertas caractersticas de C como el manejo directo de
la memoria, el uso de variables globales, sentencia goto, etc. que hicieron que la evolucin fuera
parcial. Esta evolucin termina con Java, un lenguaje que evoluciona a partir de C y C++, pero
que elimina diversos aspectos de estos lenguajes y se constituye en un lenguaje definitivamente
orientado a objetos, que rompe con el mal uso de los programadores en los lenguajes C y C++
convirtiendo a Java en un lenguaje popular y de amplio uso.
EVOLUCIN DE LOS LENGUAJES:

No hay que suponer que lo nico vlido sea la programacin orientada a objetos por ser lo ms
moderno. Al contrario, muchsima programacin de la que se hace hoy en da, se basa en
lenguajes o cdigo no orientado a objetos. Adems, la misma programacin orientada a objetos se
basa en conceptos muy antiguos de programacin.
Tener en cuenta que algunos lenguajes que nacieron en los aos 60 han perdido vigencia y ya no
se usan, mientras que otros se han ido modernizando y continan usndose ms o menos
ampliamente, como es el caso de Cobol. Lo que consideramos interesante con este esquema es
que se vea que Java es una evolucin que por un lado incorpora cosas que se venan usando
desde hace mucho tiempo en programacin, y por otro introduce ciertas novedades que lo
convierten en un lenguaje moderno.
Java es un lenguaje til para casi todo tipo de problemas. Podemos citar como
funcionalidades de Java varias:
a) Aplicaciones cliente: son las que se ejecutan en un solo PC o porttil, sin necesidad de
conectarse a otra mquina. Pueden servirte por Cachupin para realizar clculos o gestionar
datos.
b) Aplicaciones cliente/servidor: son programas que necesitan conectarse a otra
mquina (por Cachupin un servidor de datos) para pedirle algn servicio de forma ms o
menos continua, como podra ser el uso de una base de datos. Pueden servir por
Cachupin para el teletrabajo: trabajar desde casa pero conectados a un ordenador de una
empresa.
c) Podemos hablar tambin de aplicaciones web, que son programas Java que se
ejecutan en un servidor de pginas web. Estas aplicaciones reciben solicitudes desde un
ordenador y envan al navegador (Internet Explorer, Firefox, Safari, etc.) que acta como
su cliente pginas de respuesta en HTML.
stos son slo algunos Cachupins de todo el potencial que hay detrs de Java como
lenguaje para aprender y obtener muchos beneficios con su uso. Obviamente por determinados
trminos empleados (cliente, cliente/servidor, base de datos, HTML), te dars cuenta de que el
lenguaje Java tiene mucha potencialidad, pero tambin de que su conocimiento a fondo requerira
mucho tiempo. Nosotros en este curso vamos a estudiar nicamente los aspectos ms bsicos de
Java.
Por otro lado, cuando se habla de Java es habitual or hablar de definiciones tericas
sobre qu es la programacin orientada a objetos, sus caractersticas (herencia, abstraccin,

polimorfismo, encapsulamiento), los objetos, la mquina virtual Java, y siglas como JVM, JRE,
JDK, etc.
MQUINA VIRTUAL JAVA (JAVA VIRTUAL MACHINE O JVM). COMPILADOR E INTRPRETE.
BYTECODE.
Vamos a crear nuestro primer programa, que nos servir para comprobar si hemos
instalado y configurado correctamente Java. Pero antes vamos a repasar algunos conceptos
importantes que nos permitan entender lo que vamos haciendo.
El primer concepto a abordar es el de compilacin. Compilar significa traducir el cdigo escrito
en Lenguaje entendible por humanos (por Cachupin Java, C, PHP, VISUAL, etc.), a un cdigo en
Lenguaje Mquina, que entienden las mquinas, pero no entendible por nosotros. Se hace esto,
porque a los humanos nos resultara casi imposible trabajar directamente con el lenguaje de los
computadores. Es por eso por lo que usamos un lenguaje ms asequible para nosotros (en nuestro
caso Java) y luego, se emplea un traductor (compilador). La creacin de programas en muchos
lenguajes se basa en el proceso: escribir cdigo fuente --> compilar y obtener programa
ejecutable.
El compilador se encarga de evitar que se pueda traducir un programa con cdigo fuente
mal escrito y de hacer otras verificaciones previas, de modo que el cdigo mquina tiene ciertas
garantas de que cumple cuando menos con los estndares de sintaxis obligatorios de un lenguaje.
CDIGO FUENTE

PROCESO DE

CDIGO DE MQUINA

COMPILACIN

public class Cachupn{


public static void main(String[ ] arg)
{
System.out.println("Hola!!!!");
}
}

En este esquema, el archivo ejecutable no es vlido para cualquier ordenador. Por


Cachupin, si se ha generado el ejecutable para Windows, no podr utilizarse en Macintosh. Sin
embargo el proceso en Java es distinto respecto a otros lenguajes ya que, cuando se lanz la
primera versin, pues Java se hizo independiente del hardware y del sistema operativo en

que se ejecutaba, es decir, independiente de la plataforma, aadiendo un paso intermedio: los


programas Java no se ejecutan en nuestra mquina real (en nuestro PC o servidor) sino que Java
simula una mquina virtual con su propio hardware y sistema operativo. En resumen, el proceso
se ampla en un paso: del cdigo fuente, se pasa a un cdigo intermedio denominado
habitualmente bytecode entendible por la mquina virtual Java. Y es esta mquina virtual
simulada, denominada Java Virtual Machine o JVM, la encargada de interpretar el bytecode

VIRTUAL JVM

BYTECOEDE
MQUINA

CDIGO FUENTE

COMPILACIN

dando lugar a la ejecucin del programa.


CDIGO MQUINA

public class Cachupn{


public static void main(String[ ] arg)
{
System.out.println("Hola!!!!");
}
}

Esto permite que Java pueda ejecutarse en una mquina con el Sistema Operativo Unix,
Windows, Linux o cualquier otro, porque en realidad no va a ejecutarse en ninguno de los
sistemas operativos, sino en su propia mquina virtual que se instala cuando se instala Java.
El precio a pagar o desventaja de este esquema es que todo ordenador que quiera correr una
aplicacin Java ha de tener instalado Java con su mquina virtual. Las diferencias entre ambas
concepciones podemos verlas en los siguientes esquemas.

La mquina virtual es un aspecto importante que diferencia a Java de otros lenguajes;


permite escribir y compilar el programa una sola vez, en lugar de varias veces y ejecutar ese
cdigo en cualquier plataforma (write once, run anywhere); otra razn de su gran xito, ha sido
que cuando surgi se convirti en un lenguaje ms orientado a objetos que todos los otros
lenguajes existentes. Adems cabe destacar su potencia y el permitir crear programas de aspecto
y funcionamiento muy similar al tambin muy popular entorno Windows. Esto afianz su
reconocimiento como un lenguaje de programacin innovador.
Aclarar que al ser Java un programa que se interpreta en una mquina virtual, el archivo
resultante de la compilacin es un archivo con la extensin .class interpretable por la mquina
virtual. Este archivo .class est escrito en un lenguaje de mquina virtual (bytecode).
Para que la Mquina Real (nuestro PC) ejecute el programa, hay que interpretar
(traducir) el archivo .class a un cdigo en Lenguaje de Mquina Real. Esta se llama interpretar
o traducir del lenguaje de la mquina virtual a la mquina real.
Los archivos respectivos que se encargan de estas tareas son:
a) El compilador Java --- > javac.exe. Se encarga de compilar el cdigo fuente.
b) El intrprete Java

--- > java.exe. Se encarga de interpretar los archivos .class

(bytecode).
La ruta en la que se ubican ambos archivos es esta o una similar, depende de la versin
de Windows:
C:\Program Files (x86)\ Java\jdk1.7.0_51\bin o C:\Program Files\Java\jdk1.7.0_51\bin
Obs.: El explorador de Windows nos muestra una barra con la ruta en que nos encontramos (ruta
aparente). Para conocer la ruta real basta pinchar sobre la ruta aparente.

COMPILAR E INTERPRETAR NUESTRO PRIMER PROGRAMA


PASO 1: Creacin del cdigo fuente
Abrimos el Bloc de notas de Windows (Inicio -> Todos los programas -> Accesorios ->
Bloc de notas), WordPad, Notepad, etc. lo importante es grabar el contenido como texto sin
formato (en cdigo ASCII).

Una vez que tengamos el bloc de notas abierto escribiremos nuestro primer programa,
que mostrar un texto Hola Java en la ventana consola DOS (ventana del sistema que ms
adelante explicaremos cmo manejar). Aclarar que por el momento no debemos preocuparnos de
entender lo que escribimos: esto lo explicaremos ms adelante. Nuestro objetivo ahora es
simplemente comprobar que podemos ejecutar un programa escrito en Java.
El cdigo de nuestro programa en Java, escrito en el bloc de notas, ser el siguiente:
public class Cachupn{
public static void main(String[ ] arg) {
System.out.println("Hola!!!!");
}
}
A continuacin se graba nuestro programa: pulsamos en Archivo -> Guardar como y le
ponemos como nombre Cachupin.java, en donde el nombre con el que grabamos y el nombre en la
lnea de cdigo public class, deben ser las mismas, en este caso Cachupin.
Obs.: Hacer coincidir nombre del archivo y nombre del programa, tanto en maysculas como en
minsculas, y la extensin del archivo habr de ser siempre .java (se recomienda grabar el
archivo en una carpeta para proceder al paso 2).
PASO 2: Compilacin y ejecucin del programa
Vamos a proceder a la compilacin e interpretacin de este pequeo programa Java. Lo
haremos usando la ventana consola del DOS. Para visualizar esta ventana debemos proceder as:

Inicio -> Todos los programas -> Accesorios -> Smbolo del sistema. Sobre la ventana consola
escribiremos el comando cd C:\Ejercicios y pulsaremos enter. Esto nos traslada a la carpeta
donde se ubica nuestro archivo (Cachupin.java). Si hemos accedido correctamente al escribir dir
y pulsar enter nos debe aparecer el archivo Cachupin.java. A continuacin daremos la instruccin
para que se realice el proceso de compilacin del programa, para lo que escribiremos javac
Cachupin.java, donde javac es el nombre del compilador (javac.exe) que transformar el
programa que hemos escrito nosotros en lenguaje Java al lenguaje de la mquina virtual Java
(bytecode), dando como resultado un nuevo archivo Cachupin.class que se crear en este mismo
directorio. Si te aparece un mensaje de error revisa todos los pasos anteriores que hemos
explicado, pues es posible que no se hayan creado las variables de entorno o que el archivo no
est bien ubicado, etc. Para comprobar si se ha creado el archivo escribiremos en la ventana
consola el comando dir. Comprobaremos que nos aparecen dos archivos: Cachupin.class
(bytecode creado por el compilador) y Cachupin.java (cdigo fuente creado por nosotros).
Finalmente, vamos a pedirle al intrprete que ejecute el programa, es decir, que
transforme el cdigo de la mquina virtual Java en cdigo mquina interpretable por nuestro
ordenador y lo ejecute. Para ello escribiremos en la ventana consola: java Cachupin. El resultado
ser que se nos muestra la cadena Hola Java. Si logramos visualizar este texto en pantalla, ya
hemos desarrollado nuestro primer programa en Java.
CUL ES EL MEJOR IDE PARA JAVA?
Hemos generado nuestro primer programa Java usando las herramientas ms bsicas
posibles: el bloc de notas y la ventana consola de DOS. Los programadores utilizan
herramientas ms sofisticadas ya que facilitan el trabajo enormemente. Dentro de estas
herramientas podramos hablar de entornos de desarrollo (IDEs) o frameworks.
A veces ambos trminos se confunden. Nosotros nos referiremos a IDE como a un
programa que nos permite desarrollar cdigo en un lenguaje y que incorpora habitualmente:
a) Un espacio para la escritura de cdigo con cierta ayuda interactiva para generar cdigo y
para indicar los errores de sintaxis que se cometan por parte del programador.
b) La posibilidad de compilar y ejecutar el cdigo escrito.
c) La posibilidad de organizar los proyectos de programacin.
d) Herramientas auxiliares para programadores para deteccin de errores o anlisis de
programas (debuggers).
e) Otras opciones como utilidades para pruebas, carga de libreras, etc.

Existen diversos IDEs para Java. Vamos a citar algunos de ellos:


a) Eclipse: software libre que se puede descargar en http://www.eclipse.org. Es uno de los
entornos Java ms utilizados a nivel profesional. El paquete bsico de Eclipse se puede expandir
mediante la instalacin de plugins para aadir funcionalidades a medida que se vayan necesitando.
b) NetBeans: software libre que se puede descargar en http://www.netbeans.org. Otro de los
entornos Java muy utilizados, tambin expandible mediante plugins. Facilita bastante el diseo
grfico asociado a aplicaciones Java.
c) BlueJ: software libre que se puede descargar en http://bluej.org. Es un entorno de desarrollo
dirigido al aprendizaje de Java (entorno acadmico) y sin uso a nivel profesional. Es utilizado en
distintas universidades para la enseanza de Java. Destaca por ser sencillo e incluir algunas
funcionalidades dirigidas a que las personas que estn aprendiendo tengan mayor facilidad para
comprender aspectos clave de la programacin orientada a objetos.
d) JBuilder: software comercial. Se pueden obtener versiones de prueba o versiones simplificadas
gratuitas en la webhttp://www.embarcadero.com buscando en la seccin de productos y desarrollo
de aplicaciones. Permite desarrollos grficos.
e) JCreator: software comercial. Se pueden obtener versiones de prueba o versiones
simplificadas gratuitas en la webhttp://www.jcreator.com. Este IDE est escrito en C++ y omite
herramientas para desarrollos grficos, lo cual lo hace ms rpido y eficiente que otros IDEs.
La eleccin de cul IDE usar ser el que nos recomiende una fuente de confianza, o el
que nos resulte ms cmodo, o el que mejor sepamos usar. Para cada trabajo o situacin que se
nos plantee, podremos elegir un tipo de martillo u otro. Sin embargo, BlueJ, es un entorno de
desarrollo diseado para el aprendizaje de la programacin. No obstante, hay que tener presente
que BlueJ es un entorno Java completo. No se trata de una versin de Java simplificada o
recortada con fines de enseanza. Se ejecuta sobre la herramienta profesional para Java de
Oracle (antes Sun Microsystems) denominada JDK (Java Development Kit) y utiliza el mismo
compilador y mquina virtual que otros entornos como Eclipse o NetBeans. Por tanto BlueJ cumple
con la especificacin oficial de Java, aunque obviamente es ms simplificado y tiene bastantes
menos funcionalidades que otros entornos de uso profesional. BlueJ est pensado para que las
personas que aprenden programacin puedan aprehender la filosofa y metodologa de la
programacin orientada a objetos, que es el marco dentro del cual se encuentra Java.

You might also like