Curso de JAVA. Iniciando con las Técnologias Java.

60
Curso de JAVA

Transcript of Curso de JAVA. Iniciando con las Técnologias Java.

Page 1: Curso de JAVA. Iniciando con las Técnologias Java.

Curso de JAVA

Page 2: Curso de JAVA. Iniciando con las Técnologias Java.

Iniciando conlas Técnologias Java

Page 3: Curso de JAVA. Iniciando con las Técnologias Java.

¿Qué es la tecnología Java?

La tecnología Java es una revolucionaria plataforma informática presentada por Sun Microsystems en 1995. Denominado originalmente OAK, el lenguaje de programación fue rebautizado como Java en 1995.

Page 4: Curso de JAVA. Iniciando con las Técnologias Java.

La tecnología Java despliega una multitud de emocionantes posibilidades para los usuarios, pues permite que prácticamente cualquier aplicación (ya sean juegos, herramientas o programas de información y servicios) se ejecute en casi cualquier equipo o dispositivo.

Page 5: Curso de JAVA. Iniciando con las Técnologias Java.

Características

Es orientado a objetos. Es compilado e interpretado. Es un lenguaje multiplataforma. Es seguro. Las API nos permiten extender el

lenguaje. Multithreaded

Page 6: Curso de JAVA. Iniciando con las Técnologias Java.

Java es un lenguaje orientado a objetos, eso implica que su concepción es muy próxima a la forma de pensar humana.

Page 7: Curso de JAVA. Iniciando con las Técnologias Java.

Es un lenguaje que es compilado, generando ficheros de clases compilados, pero estas clases compiladas, son en realidad interpretadas por la máquina virtual de java. Siendo la máquina virtual de java la que mantiene el control sobre las clases

que se estén ejecutando.

Page 8: Curso de JAVA. Iniciando con las Técnologias Java.

Es un lenguaje multiplataforma: El mismo código java que funciona en un sistema operativo, funcionará en cualquier otro sistema operativo que tenga instalada la máquina virtual java.

Page 9: Curso de JAVA. Iniciando con las Técnologias Java.
Page 10: Curso de JAVA. Iniciando con las Técnologias Java.

Es un lenguaje seguro: La máquina virtual, al ejecutar el código java, realiza comprobaciones de seguridad, además el propio lenguaje carece de características inseguras, como por ejemplo los punteros.

Page 11: Curso de JAVA. Iniciando con las Técnologias Java.

Gracias al API de java podemos ampliar el lenguaje para que sea capaz de, por ejemplo, comunicarse con equipos mediante red, acceder a bases de datos, crear páginas HTML dinámicas, crear aplicaciones visuales al estilo Windows, ... etc

Page 12: Curso de JAVA. Iniciando con las Técnologias Java.
Page 13: Curso de JAVA. Iniciando con las Técnologias Java.

Maquina Virtual de Java

Una Máquina Virtual de Java (JVM) es el elemento encargado de ejecutar el código (bytecode) generado por la compilación de código fuente escrito usando el lenguaje de programación Java. Como todas las piezas del rompecabezas Java, fue desarrollado originalmente por Sun Microsystems.

Page 14: Curso de JAVA. Iniciando con las Técnologias Java.

La gran ventaja de la máquina virtual java es aportar portabilidad al lenguaje de manera que desde SUN se han creado diferentes máquinas virtuales java para diferentes arquitecturas y así un programa .class escrito en un Windows puede ser interpretado en un entorno Linux. Tan solo es necesario disponer de dicha máquina virtual para dichos entornos.

Page 15: Curso de JAVA. Iniciando con las Técnologias Java.

Bytecode

Como código intermedio, se trata de una forma de salida utilizada por los implementadores de lenguajes para reducir la dependencia respecto del hardware específico y facilitar la interpretación.

Page 16: Curso de JAVA. Iniciando con las Técnologias Java.

Entorno de ejecución

Para poder ejecutar una aplicación en una Máquina Virtual de Java, el programa código debe compilarse de acuerdo a un formato binario portable estandarizado, normalmente en forma de ficheros con extensión .class.

Page 17: Curso de JAVA. Iniciando con las Técnologias Java.

Java Compiler

Page 18: Curso de JAVA. Iniciando con las Técnologias Java.

Un programa puede componerse de múltiples clases, en cuyo caso cada clase tendrá asociada su propio archivo .class. Para facilitar la distribución de aplicaciones, los archivos de clase pueden empaquetarse juntos en un archivo con formato jar.

Page 19: Curso de JAVA. Iniciando con las Técnologias Java.
Page 20: Curso de JAVA. Iniciando con las Técnologias Java.

Para qué empaquetar?

El empaquetado evita la sobrecarga por la continua apertura y cierre de conexiones para cada uno de los fragmentos necesarios.

Page 21: Curso de JAVA. Iniciando con las Técnologias Java.

El código resultante de la compilación es ejecutado por la JVM que lleva a cabo la emulación del conjunto de instrucciones, bien por un proceso de interpretación o más habitualmente mediante un compilador JIT (Just In Time).

Page 22: Curso de JAVA. Iniciando con las Técnologias Java.

Compilador JIT

El JIT convierte el bytecode a código nativo de la plataforma destino, lo que permite una ejecución mucho más rápida. El inconveniente es el tiempo necesario al principio para la compilación.

Page 23: Curso de JAVA. Iniciando con las Técnologias Java.

En un sentido amplio, la Máquina Virtual de Java actúa como un puente entre el resultado de la compilación (el bytecode) y el sistema sobre el que se ejecuta la aplicación. Para cada dispositivo debe haber una JVM específica, ya sea un teléfono móvil, un PC con Windows XP, o un microondas.

Page 24: Curso de JAVA. Iniciando con las Técnologias Java.

En cualquier caso, cada máquina virtual conoce el conjunto de instrucciones de la plataforma destino, y traduce un código escrito en lenguaje Java (común para todas) al código nativo que es capaz de entender el Hardware de la plataforma.

Page 25: Curso de JAVA. Iniciando con las Técnologias Java.

Java Runtime

Page 26: Curso de JAVA. Iniciando con las Técnologias Java.

Tipos de Datos

Page 27: Curso de JAVA. Iniciando con las Técnologias Java.

Tipos primitivos de datos

Todo lenguaje computacional debe soportar la existencia de variables de tipos numérico, lógico y de carácter para la construcción de un programa

Java cuenta con ocho tipos de datos primitivos para almacenar distintos rangos de valores

Page 28: Curso de JAVA. Iniciando con las Técnologias Java.
Page 29: Curso de JAVA. Iniciando con las Técnologias Java.

Declaración e inicialización de variables de tipo primitivo Cualquier variable, se declara

proporcionando su tipo, su nombre, y opcionalmente su valor inicial. Además toda declaración debe finalizar con un punto y coma.

int a; /* declara una variable entera de 32 bits */ double b; /* declara una variable de punto flotante de 64 bits */

Page 30: Curso de JAVA. Iniciando con las Técnologias Java.

int a; /* declara una variable entera de 32 bits */ double b; /* declara una variable de punto flotante de 64 bits */

Ahora bien, si se quiere declarar una lista de variables, se debe usar el separador coma.

int x, y, z; int contador, sum; double tiempo, radio;char opcion; boolean encendido; int mult, resto;char entrada, salida;

Page 31: Curso de JAVA. Iniciando con las Técnologias Java.

Para dar un valor inicial a la variable, se debe usar el operador asignación =.

int contador = 0, sum = 0; double tiempo, radio = 1.0;boolean encendido = false; char entrada = 's', salida = 'w';

Page 32: Curso de JAVA. Iniciando con las Técnologias Java.

Los Operadores

Page 33: Curso de JAVA. Iniciando con las Técnologias Java.

Operadores Aritméticos

Suma + Resta – Multiplicación * División / Modulo %

Page 34: Curso de JAVA. Iniciando con las Técnologias Java.

Operadores de Asignación

+= -= *= /= %=

Page 35: Curso de JAVA. Iniciando con las Técnologias Java.

Operadores Incrementales Son los operadores que nos permiten

incrementar las variables en una unidad. Se pueden usar delante y detrás de la variable dependiendo de lo que queramos, es decir, si queremos que incremente o viceversa antes de utilizar o lo contrario.

++ --

Page 36: Curso de JAVA. Iniciando con las Técnologias Java.

Operadores Relacionales

> Mayor que < Menor que == Iguales != Distintos >= Mayor o igual que <= Menor o igual que ! Negación

Page 37: Curso de JAVA. Iniciando con las Técnologias Java.

Operadores Logícos && Devuelve True si ambos operadores son

True. || Devuelve True si alguno de los operandos es

True. ! Negación del operando. & Igual que && pero evalúa ambos. | Igual que || pero evalúa ambos.

Page 38: Curso de JAVA. Iniciando con las Técnologias Java.

Operadores a nivel de Bits

>> desplazamiento a la derecha de los bits del operando.

<< desplazamiento a la izquierda de los bits de operando.

Page 39: Curso de JAVA. Iniciando con las Técnologias Java.

Constructores de Desiciones

Page 40: Curso de JAVA. Iniciando con las Técnologias Java.

Sentencia if - else

if (condición) sentencia; La condición es una expresión

booleana. La sentencia se ejecuta solamente si la expresión booleana es verdadera.

if(x == 5) { x = 0;

}

Page 41: Curso de JAVA. Iniciando con las Técnologias Java.

If forma compuesta if (condición) { sentencia; } else { sentencia; }

Además de ejecutar las sentencias en el caso que se cumpla la condición, podemos explicitar las instrucciones en el caso que no se cumpla dicha condición.

int x = 0;

if(x > 5) {x = 0;

}else {

x++;}

Page 42: Curso de JAVA. Iniciando con las Técnologias Java.

Sentencia switch

La sentencia switch se encarga de estructurar una selección múltiple. Al contrario del enunciado if-else que sólo podemos indicar dos alternativas, maneja un número finito de posibilidades.

Page 43: Curso de JAVA. Iniciando con las Técnologias Java.

Al evaluar la expresión de switch, el intérprete busca una constante con el mismo valor. Si la encuentra, ejecuta las sentencias asociadas a esta constante hasta que tropiece con un break. La sentencia break finaliza la ejecución de esta estructura. Si no encuentra ninguna constante que coincida con la expresión, busca la línea default.

Page 44: Curso de JAVA. Iniciando con las Técnologias Java.

switch( mes ) {case 1:

x = “Enero”;break;

case 2:x = “Febrero”;break;

default:x = “”;break;

}

Page 45: Curso de JAVA. Iniciando con las Técnologias Java.

Los Bucles

Page 46: Curso de JAVA. Iniciando con las Técnologias Java.

Los bucles en Java

Los bucles se utilizan para ejecutar un conjunto de instrucciones varias veces basándose siempre en una condición que decidirá si se sigue repitiendo o no

Page 47: Curso de JAVA. Iniciando con las Técnologias Java.

While

while (expresion) {sentencias}

Las instrucciones dentro de las llaves se ejecutan mientras la expresión sea verdadera.

int i = 5;while (i > 0) { i-- };

Page 48: Curso de JAVA. Iniciando con las Técnologias Java.

For for (inicialización, expresion, incremento)

{Sentencias;}

Es un bucle más "fijo", permite ejecutar el conjunto de sentencias un numero determinado de veces fijado al principio del bucle y funciona por tanto como un contador.

for (int i= 0; i <10; i++){     System.out.println("el valor de i es: " + i); }

Page 49: Curso de JAVA. Iniciando con las Técnologias Java.

do while

Es igual al bucle while anteriormente visto, solo que ahora se evalúa la expresión al final del bucle, por lo que ese conjunto de sentencias se ejecuta al menos una vez.

int i=5; do {i --;} while ( i > 0 )

Page 50: Curso de JAVA. Iniciando con las Técnologias Java.

Los Objetos

Page 51: Curso de JAVA. Iniciando con las Técnologias Java.

Clases

Lo primero que hay que hacer para utilizar un objeto es tenerlo.

Para crear un objeto debemos de tener una clase.

Para crear una clase lo hacemos con la palabra reservada class.

class NombreDeMiClase {}

Page 52: Curso de JAVA. Iniciando con las Técnologias Java.

Instanciar un Objeto

Para crear o instanciar un objeto se utiliza la palabra reservada “new”. “new” crea un objeto de la clase que le especifiquemos pero antes de esto se tiene que declarar la variable que contendrá ese nuevo objeto.

Vehiculo v;v = new Vehiculo();

Page 53: Curso de JAVA. Iniciando con las Técnologias Java.

En principio esta variable está vacía, no contiene ningún objeto, pero está "preparada" para contener un objeto de la clase Vehiculo.

Page 54: Curso de JAVA. Iniciando con las Técnologias Java.

Cuando se ejecuta una sentencia "new" para crear un objeto de una clase, lo que realmente se hace es llamar al método constructor correspondiente a esa clase.

Vehiculo v = new Vehiculo();

Page 55: Curso de JAVA. Iniciando con las Técnologias Java.

Método Constructor

No tiene tipo de dato específico de retorno, ni siquiera void. Esto se debe a que el tipo específico que debe devolver un constructor de clase es el propio tipo de la clase.

Page 56: Curso de JAVA. Iniciando con las Técnologias Java.

Cuando se declara una clase en Java, se pueden declarar uno o más constructores opcionales que realizan la inicialización cuando se instancia (se crea una ocurrencia) un objeto de dicha clase.

Page 57: Curso de JAVA. Iniciando con las Técnologias Java.

Cuando se crea una nueva instancia de MiClase, se crean (instancias) todos los métodos y variables, y se llama al constructor de la clase.

MiClase mc;mc = new MiClase();

Page 58: Curso de JAVA. Iniciando con las Técnologias Java.

Antes de ser instanciada con new no consume memoria, simplemente es una declaración de tipo.

Page 59: Curso de JAVA. Iniciando con las Técnologias Java.

Luego, en Java, cuando se instancia un objeto, siempre se hace una llamada directa al constructor como argumento del operador new. Este operador se encarga de que el sistema proporcione memoria para contener al objeto que se va a crear.

Page 60: Curso de JAVA. Iniciando con las Técnologias Java.

Se puede pensar en el constructor de defecto en Java como un método que tiene el mismo nombre que la clase y una lista de argumentos vacía.

Class MiClase {MiClase() {}

}