1 - Introduccion a Java

download 1 - Introduccion a Java

of 38

description

Introduccion al lenguaje de programacion Java

Transcript of 1 - Introduccion a Java

  • INACAPUniversidad Tecnolgica de Chile

    Sede Santiago Centro

    Introduccin a Java

    Ing. Manuel Lpez Ramos

    Taller de Programacin I

    Curso Java J2SE

  • Parte I

    Qu es Java?

  • Qu es Java?

    Java normalmente es considerado como un lenguaje de programacin. Sin embargo, Java considera 4 puntos importantes para el desarrollo de software:

  • Qu es Java?

    Java normalmente es considerado como un lenguaje de programacin. Sin embargo, Java considera 4 puntos importantes para el desarrollo de software:

    1) Es un lenguaje de programacinPermite realizar programas de computador, utilizando sintaxis y palabras reservadas similares a las de los lenguajes C y C++. Incentiva tambin a utilizar el paradigma de programacin orientado al objeto para el desarrollo de software.

  • Qu es Java?

    Java normalmente es considerado como un lenguaje de programacin. Sin embargo, Java considera 4 puntos importantes para el desarrollo de software:

    1) Es un lenguaje de programacin

    2) Es una plataforma de desarrolloPermite el desarrollo de software, utilizando un entorno de programacin orientado a objetos, con herramientas y utilidades que permiten desarrollar prototipos y software en poco tiempo y con alta escalabilidad. Adems, provee de una API (interfaz de programacin de aplicaciones) con bibliotecas extensas de funciones de amplia utilizacin.

  • Qu es Java?

    Java normalmente es considerado como un lenguaje de programacin. Sin embargo, Java considera 4 puntos importantes para el desarrollo de software:

    1) Es un lenguaje de programacin

    2) Es una plataforma de desarrollo

    3) Es una tecnologa de software/hardwareJava es una tecnologa; no slo es un lenguaje y un conjunto de bibliotecas de programacin, sino que adems ofrece a los desarrolladores una serie de modelos, metodologas y tcnicas que permiten el desarrollo de soluciones informticas, utilizando formas ya probadas en la industria. Muchas de las bibliotecas de desarrollo estn estructuradas de forma tal que obligan al programador a seguir ciertos pasos en la construccin de las soluciones, siguiendo modelos estndares de software, tales como OMT y OMT++, modelos de capas, modelos cliente-servidor y otros. Tambin permite implementar soluciones para robtica o sobre silicio, en forma de chips, procesadores, placas de desarrollo electrnico y dispositivos porttiles.

  • Qu es Java?

    Java normalmente es considerado como un lenguaje de programacin. Sin embargo, Java considera 4 puntos importantes para el desarrollo de software:

    1) Es un lenguaje de programacin

    2) Es una plataforma de desarrollo

    3) Es una tecnologa de software/hardware

    4) Es una mquina virtualTodos los programas que se desarrollan en la plataforma Java (utilizando el lenguaje Java) se ejecutan sobre una arquitectura de CPU virtual, denominada Mquina Virtual de Java (Java Virtual Machine, o JVM), lo que permite la portabilidad de las aplicaciones de Java y su ejecucin en casi cualquier sistema de hardware para el cual se haya escrito una JVM.

  • Java y sus 3 grandes ramas...

    Java, considerado como plataforma de desarrollo completa, puede ser dividido en 3 grandes subplataformas, cada una orientada a soluciones con diversos objetivos:

    J2SE (Java 2 Standard Edition)

    J2EE (Java 2 Enterprise Edition)

    J2ME (Java 2 Micro Edition)

    Desarrollo de aplicaciones de escritorio y distribuidas.

    Desarrollo de aplicaciones Web con bases de datos y empresariales.

    Desarrollo de aplicaciones para dispositivos porttiles (PDAs, celulares, etc.)

  • Java y sus 3 grandes ramas... En el siguiente grfico se pueden observar las plataformas de Java existentes y el tipo de software/hardware al que estn orientadas comnmente:

    Dispositivos habilitadoscon tecnologa Java Entornos de escritorio habilitados

    con tecnologa Java Servidoresde trabajo Servidoresde alto rendimiento

  • Parte II

    Cmo se trabajacon la tecnologa Java

    en el desarrollo de aplicaciones?

  • Modelo de desarrollo de aplicaciones en Java

    En el siguiente esquema se indican los pasos a seguir para el desarrollo de una aplicacin de Java.

    MiClase.java

    Paso 1: escritura de un cdigo fuente en el

    lenguaje Java.

    Proyectode Java

    con un archivo fuente

  • Modelo de desarrollo de aplicaciones en Java

    En el siguiente esquema se indican los pasos a seguir para el desarrollo de una aplicacin de Java.

    MiClase.java javac

    Paso 2: compilacin del cdigo fuente anterior,

    utilizando un compilador de Java.

  • Modelo de desarrollo de aplicaciones en Java

    En el siguiente esquema se indican los pasos a seguir para el desarrollo de una aplicacin de Java.

    MiClase.java javac

    0100101001001100111000010

    MiClase.class

    Paso 3: luego de la compilacin, se obtiene

    un cdigo objeto, denominado Cdigo de

    Bytes (o Bytecode).

  • Modelo de desarrollo de aplicaciones en Java

    Tambin se pueden compilar muchos archivos fuentes dentro del proyecto de una nica aplicacin de software:

    MiClase01.java

    javac

    0100101001001100111000010

    MiClase01.class

    MiClase02.java

    MiClase03.java

    0100101001001100111000010

    MiClase02.class

    0100101001001100111000010

    MiClase03.class

    Proyectode Java

    con varios archivos fuentes

    Paso opcional: se pueden compilar muchos cdigos

    fuentes para obtener muchos archivos de cdigo

    de bytes dentro de un nico proyecto.

  • Modelo de desarrollo de aplicaciones en Java

    Una vez que se ha terminado de compilar los archivos fuente del proyecto y se han obtenido los archivos de cdigo de bytes, se procede a la ejecucin de la aplicacin de Java:

    0100101001001100111000010

    MiClase01.class

    0100101001001100111000010

    MiClase02.class

    0100101001001100111000010

    MiClase03.class

    java (para PC/Windows)

    java (para PC/GNU/Linux)

    java (para celulares,

    para robots,para tostadoras,

    etc.)Archivo comprimido

    con varios archivos objeto

    (archivo .jaro carpeta)

    Paso 4: se ejecutan los archivos de cdigo de

    bytes en la JVM adecuada para cada plataforma de

    hardware.

  • Parte III

    Desarrollo de aplicacionesen Java

  • Aplicaciones en Java

    Java es un lenguaje basado en la sintaxis de los lenguajes C y C++, mientras que basa su metodologa de programacin en lenguajes tales como C++ y Smalltalk.

    Una aplicacin en Java est formada por los siguientes elementos:

    Proyectode Java

    (en NetBeans, Eclipse, etc.)

    0100101001001100111000010

    0100101001001100111000010

    0100101001001100111000010

    0100101001001100111000010

    0100101001001100111000010

    JAR JAR JAR JAR JAR

    Cdigos fuentes

    Archivos de cdigode bytes

    (clases compiladas)

    Bibliotecasempaquetadas

    Archivos .java

    Archivos .class

    Archivos .jar

  • Creacin de aplicaciones en Java

    Para crear aplicaciones en Java se pueden utilizar:

    un editor de texto + una consola de sistema operativo, o bien un entorno integrado de desarrollo de aplicaciones (conocido como IDE)

    Si, por ejemplo, se crea un proyecto en NetBeans, se pueden observar las siguientes unidades de aplicacin:

    Proyectode Java

    Paquetes de cdigos fuente(directorios que agrupan

    los archivos .java)

    Cdigos fuente(archivos .java)

    Directorio de bibliotecasprecompiladas

    (directorio que agrupa los archivos .jar externos al

    proyecto)

  • Cdigo fuente de Java (concepto de clase)

    Una vez que se ha creado el proyecto de Java sobre algn IDE conveniente, es necesario crear uno o ms archivos fuente (archivos con cdigo de Java).

    1) Un cdigo de Java se denomina bajo el concepto de clase de Java. 2) Las clases contienen el cdigo ejecutable de la aplicacin.

    3) Las clases, por ende, pueden contener variables y subrutinas.

  • Cmo crear una clase de Java? (parte 1)

    Cmo crear una clase de Java?

    La creacin de una clase de Java es simple. Basta con crear un archivo de texto y agregar la sentencia inicial

    public class junto con un par de llaves ( { y } ) para encerrar el cdigo interno de ella.

    Finalmente, la estructura base de la clase de Java queda distribuida de la siguiente forma:

    Ms adelante se indicar el significado de la palabra reservada public.

  • Cmo crear una clase de Java? (parte 2)

    Luego de crear la estructura base, se debe crear alguna funcin que permita ejecutar cdigo de Java.

    Las clases en general no estn vacas: pueden contener variables y subrutinas.

    1) A las variables creadas directamente dentro de la estructura de clase se las conoce con el nombre de atributos de clase.

    2) A las subrutinas creadas directamente dentro de la estructura de clase se las conoce con el nombre de mtodos de clase (o funciones).

    3) El mtodo de clase principal dentro de una aplicacin de Java (en J2SE) se denomina mtodo main, y es similar en importancia y uso a la funcin main de los programas en lenguajes C y C++.

    4) El mtodo main contiene el cdigo que se ejecutar al inicio de la aplicacin; una vez que el cdigo de este mtodo se ejecute completamente, la aplicacin finaliza irremediablemente.

  • Cmo crear una clase de Java? (parte 3)

    El prototipo o encabezado del mtodo main es exactamente el siguiente:public static void main(String[] args)

    seguido de un par de llaves que delimitan el bloque de cdigo ejecutable que iniciar la aplicacin. El significado de las palabras claves public, static y void se explicar en una prxima oportunidad.

    Dentro del mtodo main, se pueden colocar las sentencias de Java deseadas.

  • Parte IV

    El Lenguajede programacin Java

    (palabras claves del lenguaje y estructuras de programacin generales)

  • Comentarios en Java

    En Java, la creacin de comentarios puede realizarse de dos formas distintas:

    1) Comentarios de 1 lnea:

    Se anotan anteponiendo los caracteres //.

    Por ejemplo:

    // Este es un comentario de una nica lnea// Y este es otro comentario independiente// del anterior.....

    2) Comentarios multilnea:

    Se anotan encerrando el comentario entre los caracteres /* y */.

    Por ejemplo:

    /* Este es un comentario de mltiples lneas que contina en esta lneay en esta otra. Aqu termina... */

  • Tipos de datos en Java

    Java es un lenguaje basado en la sintaxis de los lenguajes C y C++, mientras que basa su metodologa de programacin en lenguajes tales como C++ y Smalltalk.

    Java posee 8 tipos de datos primitivos (o bsicos, dados por el lenguaje). Estos son:

    Tipo de dato Tamao Rango de datos Ejemplo

    byte 8 bits -127 a +128 byte A = 2;

    short 16 bits -32768 a +32767 short B = -45;

    int 32 bits -2,147,483,648 a 2,147,483,647 int C = -1023452;

    long 64 bits -9,223,372,036,854,775,808 a +9,223,372,036,854,775,807

    long D = 4567L;

    float 32 bits 1.40129846432481707e-45 a 3.40282346638528860e+38 float E = 3.14159F;

    double 64 bits 4.94065645841246544e-324 a +-1.79769313486231570e+308 double F = 2.7149D;

    char 16 bits un carcter Unicode char G = '@';

    boolean 1 bit true / false boolean H = true;

    (observar con atencin los sufijos para algunos datos)

  • Creacin y utilizacin de variables (parte 1)

    En Java, la creacin de variables se realiza de igual forma que en el lenguaje C:

    1) Creacin de variables:

    Para crear variables y/o inicializarlas, se utilizan las sintaxis siguientes:

    ;

    = ;

    Ejemplos:int a;int b = 4;char c = '@';float d = 8.7F, e = 3.1415927F, f = -5.6F;

    Las variables en Java pueden crearse e inicializarse en cualquier lugar dentro del bloque de un mtodo (no slo al inicio, como en el lenguaje C).

    Declaracin(indicacin del tipo)

    Definicin(declaracin + inicializacin)

  • Creacin y utilizacin de variables (parte 2)

    En Java, la creacin de variables se realiza de igual forma que en el lenguaje C:

    2) Utilizacin de variables:

    Para utilizar el dato almacenado en una variable, basta con invocar el nombre de la variable en cuestin.

    Ejemplos:a = a + 1;

    b = (c + a) - 4;c = 'A';d = 0.0F;

  • Operadores matemticos y lgicos (parte 1)

    En Java, se pueden utilizar los siguientes operadores aritmticos y lgicos dentro de expresiones de tipo matemtico:

    Operador Descripcin+ adicin- sustraccin / signo* multiplicacin/ divisin entera/decimal% mdulo o resto de la divisin

    entera& AND (Y) lgico de bits| OR (O) lgico de bits^ XOR (O-exclusivo) lgico de

    bits~ negacin lgica de bits

    ( ) parntesis (agrupacin)++ incremento en 1 unidad-- decremento en 1 unidad

    Operador Descripcin== igual que!= diferente a< menor que

    mayor que

    >= mayor o igual que&& AND condicional en cortocircuito& AND condicional normal|| OR condicional en cortocircuito| OR condicional normal

    ! negacin condicional>> desplazamiento de bits a la derecha

    >> desplazamiento de bits a la derecha sin signo

  • Operadores matemticos y lgicos (parte 2)

    En Java tambin existen operadores de asignacin, para escribir expresiones ms cortas:

    Operador Descripcina += b equivalente a a = a + ba -= b equivalente a a = a - ba *= b equivalente a a = a * ba /= b equivalente a a = a / ba %= b equivalente a a = a % ba &= b equivalente a a = a & ba |= b equivalente a a = a | ba ^= b equivalente a a = a ^ b

  • Operadores matemticos y lgicos (parte 3)

    Por ltimo, la siguiente tabla muestra el orden de precedencia de las operaciones aritmtico-lgicas en Java:

    Tipo de Operador DescripcinOperadores posfijos [ ] . (parametros) expr++ expr--Operadores unarios ++expr --expr +expr -expr ~ !

    Creacin o conversin new (tipo) exprMultiplicacin/divisin * / %Adicin/sustraccin + -

    Desplazamiento

  • Entrada y salida de datos

    Cree un proyecto en NetBeans, con una nica clase, y luego escriba expresiones y sentencias de Java, utilizando todos los tipos de datos, as como algunos de los operadores aritmtico-lgicos que considere ms importantes.

    Actividad prctica

  • Entrada y salida de datos (parte 1)

    Java posee una serie de mtodos generales para mostrar salidas por la consola. Estos mtodos son los siguientes:

    a) System.out.println()Imprime un valor en consola y agrega un salto de lnea al final del string.

    Ejemplos:

    System.out.println("Mi primer mensaje en Java");

    int valorNumerico = 123456;System.out.println("El valor es " + valorNumerico)

    System.out.println("El siguiente es un mensaje " +"bastante largo como para ser " +"escrito en una nica " + "lnea de programa.");

  • Entrada y salida de datos (parte 2)

    b) System.out.print()Imprime un valor en consola, pero no agrega automticamenteun salto de lnea al final del string.

    Ejemplos:

    System.out.print("Mi segundo mensaje en Java");

    boolean tengoFrio = false;System.out.print("Tengo fro? " + tengoFrio)

    System.out.print("Para marcar un salto de lnea " +"se ocupa un carcter \n" + "como en el lenguaje C\n");

  • Entrada y salida de datos (parte 3)

    c) System.out.printf()Imprime un string, mediante especificadores de formato, en consola.

    Ejemplos:

    float valorPI = 3.1415927F;System.out.printf("PI vale %f\n", valorPI);

    int miEdad = 23;System.out.printf("Tengo %i aos.\n", miEdad);

    long valor1 = 4, valor2 = 56;System.out.printf("Valores: %10i %10i",valor1,valor2);

  • Entrada y salida de datos

    Cree una aplicacin en Java, con tres clases distintas, y copie los ejemplos de cada mtodo presentado (println, print y printf) para visualizar cmo se ejecutan en consola.

    Actividad prctica

  • Operadores condicionales en Java

    Las condiciones en Java tienen la siguiente forma:

    Los operadores condicionales son los siguientes: == (igual a), != (distinto a),< (menor que), > (mayor que), = (mayor o igual que).

    Ejemplos:

    3 == 4 (valor de verdad: false) 4 + 1 > 4 - 2 (valor de verdad: true) a*2 >= b/2

    etc.

    Las condiciones tambin pueden estar formadas por otras expresiones condicionales, formndose entonces expresiones condicionales compuestas:

    a > b & c c (operador lgico condicional | - O lgico)

  • Ciclos iterativos en Java

    Java posee 3 tipos de ciclos iterativos (al igual que en el lenguaje C y C++):

    a) Bloque for:Permite implementar ciclos iterativos para contar progresivamente.

    Sintaxis:

    for ([]; []; []){

    // sentencia01// sentencia02// sentencia03......

    } El bloque se ejecuta de la siguiente forma:

    1) Inicializacin de la variable.2) Si la condicin no se cumple, se termina el ciclo.3) Se realiza la ejecucin del bloque.4) Se calcula la expresin de incremento.5) Volver al paso 2.

  • Entrada y salida de datos

    Cree un programa en Java que muestre (por consola) las tablas de multiplicacin del 2 y el 3 (el segundo factor recorre desde el valor 0 al 12, dentro de cada tabla).

    Crear un programa en Java que muestre (por consola) las tablas de multiplicacin del 1 al 12. El segundo factor de cada tabla recorre los nmeros del 1 al 12 tambin. Utilice printf para imprimir las tablas.

    Cree un programa en Java que muestre (por consola) una tabla con los cuadrados y cubos de los nmeros entre el 0 y el 10.

    Actividades prcticas

    Slide 1Slide 2Slide 3Slide 4Slide 5Slide 6Slide 7Slide 8Slide 9Slide 10Slide 11Slide 12Slide 13Slide 14Slide 15Slide 16Slide 17Slide 18Slide 19Slide 20Slide 21Slide 22Slide 23Slide 24Slide 25Slide 26Slide 27Slide 28Slide 29Slide 30Slide 31Slide 32Slide 33Slide 34Slide 35Slide 36Slide 37Slide 38