You are on page 1of 16

Lenguajes de progrmacin

orientado a objetos

Rony Jordn Hancco Carpio


Bubok Publishing S.L., 2016
1 edicin
ISBN:
Impreso en Per / Printed in Peru
Editado por Bubok
Dedicatoria
ndice

Compilacin y mquina virtual


Paquetes
Clases y Herencia
Constructores y objetos
Polimorfismo e Interfaces
Inyeccin de dependencias
Diseo de pginas Web
Javascript y DOM
Patrn MVC
Operaciones con base de datos
JDBC con Spring
Integracin de servicios
Compilacin y mquina virtual

El lenguaje java fue presentado por SUN a


mediados de los aos noventa con el objetivo de crear
un lenguaje fcil de usar y realizar la ejecucin de
cdigo fuente en diferentes sistemas operativos sin
realizar cambios, es decir, sin la dependencia del
sistema operativo. Para conseguir el objetivo se
adopt el paradigma de programacin orientado a
objetos y la mquina virtual.
La mquina virtual(Java Virtual Machine) permite
la ejecucin de cdigo compilado en distintos sistemas
operativos, dicho cdigo es Bytecode. Oracle brinda
una implementacin para las arquitecturas ms
usadas, sin embargo, existen implementacin de JVM
diseadas por grandes compaias que tienen
optimizaciones para sus productos como es el caso de
IBM.
La programacin orientada a objetos se basa en
conceptos como abstraccin, encapsulacin, herencia,
polimorfismo, interface. Adicionalmente los lenguajes
que se guan del paradigma incluyen la gestin de
recoleccin de objetos no usados (recolector de
basura).
Java tiene distintas ediciones: embebido(ME, Java
Card, Java TV.), estndar(SE), empresarial(EE) y en
la nube(Cloud). Nosotros usaremos la edicin
estndar Java SE que se puede descargar de la pgina
oficial de ORACLE.
Java SE dispone de JRE, entorno de ejecucin, y
JDK, conjunto de herramientas de desarrollo.
JRE est compuesto de JVM y el conjunto de
libreras Java estndar (API Java). Para ejecutar una
aplicacin compilada en Java slo es necesario la JRE,
slo para el desarrollo de aplicaciones es necesario
JDK. Los servidores de aplicaciones regularmente
incorporan JRE.
JVM es un componente que sirve de intermediario
para la ejecucin de cdigo compilado (bytecode) que
posee instrucciones que sern ejecutadas en el
dispositivo. Dicha caracterstica permite la ejecucin
multiplataforma siendo una JVM distinta para cada
diseo de arquitectura y sistema operativo.
JVM dispone de dos reas de memoria: Heap y
Stack. Heap almacena todos los objetos durante su
ciclo de vida hasta la eliminacin por el recolector
(Garbage collector); mientras Stack almacena las
invocaciones a los mtodos, variables locales y
referencia a objetos.

Imagen 1: reas de memoria


Fuente: http://stackoverflow.com
Veamos el siguiente ejemplo:

public class Orden{


public void ejecutar(String mensaje){
System.out.println(mensaje);
}
public static void main(String[] argumento){
Orden objetoOrden = new Orden();
}
}
En el ejemplo anterior en la memoria Stack se
almacenan: ejecutar, mensaje, main, argumento y la
referencia objetoOrden; mientras en la memoria
Heap se almacena: el objeto objetoOrden.
Naturalmente la memoria Heap suele ser ms
grande que la memoria Stack. Cuando se ejecuta un
programa se puede configurar el tamao de las reas
de memoria.
En la versin JRE 8 el rea Heap tiene dos
argumentos de JVM principales: -Xms (tamao
inicial y mnimo) y -Xmx (tamao mximo); el rea
Stack tiene el argumento -Xss (tamao por cada
hilo).
Adicionalmente a la JVM, el JRE contiene las
libreras estndar que se distribuyen en los siguientes
contenedores o paquetes:

Imagen 2: Libreras de la API Java


Fuente: http://docs.oracle.com/javase/8/docs/

Para generar el cdigo fuente java se puede usar


cualquier editor de texto (Vim, Emacs, notepad)
siguiendo las siguientes reglas:
1. El archivo debe tener el nombre de la clase o tipo
pblico.
2. El nombre del archivo debe iniciar en mayscula,
cumpliendo la reglas de identificadores de clase, y
la extensin debe ser java.

Para el proceso de compilar se debe instalar el JDK,


en nuestro caso la versin 8 y configurar la variables
de entorno JAVA_HOME y path.
Las configuraciones de variables de entorno son
distintas dependiendo del sistema operativo.

Linux:

Para ver las variables de entorno se ingresa al


terminal y se ejecuta el comando env.
Para ingresar o modificar las variables de entorno se
edita los archivos /etc/profile o ~/.bashrc.

Windows:

Para configurar ingrese al panel de control.


Haga clic en el enlace Configuracin avanzada del
sistema.
Haga clic en Variables de entorno. En la seccin
Variables del sistema, busque la variable de entorno
PATH y seleccinela. Haga clic en Editar. Si no existe
la variable de entorno PATH, haga clic en Nuevo.
En la ventana Editar la variable del sistema (o Nueva
variable del sistema), debe especificar el valor de la
variable de entorno PATH. Haga clic en Aceptar.

Compilacin

Dada la clase almacenada en el archivo Clase.java:

public class Clase{


private String atributo;
Public static void main(String[] datos){
System.out.println(Inicio);
}
}

La compilacin en la lnea de comandos o terminal se


realiza con el siguiente patrn:
shell> javac Clase.java

Se crea un archivo por cada tipo, en este caso, el


archivo Clase.class.
Si se desea ejecutar la secuencia Clase.class en el
terminal:

Shell> java Clase

Similar al lenguaje C, en java cuando se ejecuta una


clase se invoca al mtodo main. En el ejemplo se
escribe en consola el mensaje Inicio.

You might also like