SlideShare uma empresa Scribd logo
1 de 55
Baixar para ler offline
Fundamentos de Java




      Fundamentos de Java

                Tema 1


                            Copyright © 2004
Fundamentos de Java
Fundamentos de Java

                     Objetivos

    Discutir acerca de las características de Java
    Comparar Java con C/C++
    Aprender acerca de la plataforma Java
    Conocer acerca del efecto de Java en la WWW
    Definir Clases y Objetos
    Aprender los principios básicos de la Programación
     Orientada Objetos en Java



                                                      Copyright © 2004
Fundamentos de Java
Fundamentos de Java

                 Introducción

    • Java surge de la necesidad de tener un lenguaje
      orientado a objetos poderoso pero simple

    • Java tiene una estructura similar a C++

    • Java es independiente de plataforma




                                                  Copyright © 2004
Fundamentos de Java
Fundamentos de Java

                             Java vs. C++
                                    C++                  Java
     Orientación a Objetos         Opcional            Obligatoria
     Variable y Funciones          Opcional            No existen
     Globales
     Multiplataforma             Código Fuente   Código fuente y bytecode
                                   (a veces)
     Administración de memoria      Manual             Automática
                                                   (Garbage Collector)
     Multihilos                       No                    Si
     Herencia Múltiple                Si                   No
     Apuntadores                      Si                   No




                                                                 Copyright © 2004
Fundamentos de Java
Fundamentos de Java

      ¿Características de Java?

              Simple
             Seguro
              Portable
             Distribuido
             Orientado a objetos
             Robusto
             Dinámico
             Interpretado
             De arquitectura neutral
             Multihilos


                                        Copyright © 2004
Fundamentos de Java
Fundamentos de Java

               ¿Qué es Java?
  Java es considerado una Plataforma de Desarrollo
  La mayoría de las características básicas de Java
   son derivadas de C y C++
  Java es utilizado para desarrollar dos tipos de
   programas: Aplicaciones y Applets
  El Java Development Kit (JDK) es una herramienta
   que los desarrolladores necesitan para compilar,
   depurar y ejecutar programas Java



                                                 Copyright © 2004
Fundamentos de Java
Fundamentos de Java

   Independencia de la Plataforma
   • Java hace posible la creación de ejecutables
     binarios que puedan ejecutarse en múltiples
     plataformas.
   • El compilador Java (javac), convierte el código
     fuente (archivo .java) a bytecodes (archivo .class).
   • Los bytecodes son interpretados por el intérprete de
     Java, y convertidos a una forma ejecutable que
     entiende la plataforma en la cual el sistema de
     tiempo de ejecución de Java se está ejecutando.




                                                    Copyright © 2004
Fundamentos de Java
Fundamentos de Java

   Independencia de la Plataforma




                                Copyright © 2004
Fundamentos de Java
Fundamentos de Java
                  La Plataforma Java
 • Es una plataforma basada en
   software y se ejecuta sobre
   cualquier otra plataforma
   basada en hardware.
 • La Plataforma Java posee
   dos componentes:
     - La Maquina Virtual de
       Java (JVM)
    - La Interfaz de
      Programación de
      Aplicaciones o API
      (Application Programming
      Interface)


                                       Copyright © 2004
Fundamentos de Java
Fundamentos de Java

    Máquina Virtual de Java(JVM)
   • La JVM es una aplicación ejecutable que
     representa a un procesador genérico en el cual
     corren los bytecodes de Java.
   • Las implementaciones concretas de la JVM se
     encuentran en muchas plataformas.
   • Toda aplicación Java debe ejecutarse en una
     instancia de la JVM. La JVM comienza a ejecutar
     la aplicación invocando el método main() de la
     clase inicial de la aplicación.



                                                  Copyright © 2004
Fundamentos de Java
Fundamentos de Java

     Modelo de seguridad de Java
  • El modelo de seguridad de Java provee una caja de
    arena que protege a las aplicaciones y applets Java
    de ser atacados por virus.

  • La caja de arena se puede personalizar en dos de
    sus componentes:

     El administrador de seguridad
      (java.lang.SecurityManager)

     El cargador de clases(Cargador de Clases
      Primordial y Objetos Cargadores de Clases )
                                                    Copyright © 2004
Fundamentos de Java
Fundamentos de Java

              Java API




                                Copyright © 2004
Fundamentos de Java
Fundamentos de Java

     Impacto de Java en la WWW




                                 Copyright © 2004
Fundamentos de Java
Fundamentos de Java

               Clases y Objetos
   • Las clases están compuestas por un conjunto de
     miembros (datos y funciones)

   • Una clase se usa como el modelo que deben seguir
     los objetos

   • Un objeto es una instancia de una clase

   • Las clases y objetos son similares a los tipos de
     datos y a las variables


                                                     Copyright © 2004
Fundamentos de Java
Fundamentos de Java

          Clases y Objetos




                                Copyright © 2004
Fundamentos de Java
Fundamentos de Java

                     Clases y Objetos

   class Computer{
                                        Definición
          boolean cpu;
                                            de
          boolean keyboard;
                                           Clase
          boolean mouse;
          String monitor;
   }


                                        Creación
   Computer objeto1 = new Computer();      de
                                         objeto



                                               Copyright © 2004
Fundamentos de Java
Fundamentos de Java
     Principios Básicos de la POO
                en Java
  • Java esta regido bajo el Paradigma de Programación
    Orientada a Objetos.

  • Java cumple con las características claves de la
    POO:
               Encapsulación
               Herencia
               Polimorfismo




                                                  Copyright © 2004
Fundamentos de Java
Fundamentos de Java
    Principios Básicos de la POO
               en Java
                              Miembros Públicos:
                              Sirven como interfaces
                              entre la cápsula y el
                              mundo exterior.




          Miembros privados




                              Cápsula:
                              Mantiene a un conjunto
                              de elementos agrupados
                              semánticamente.
     Encapsulación
                                                       Copyright © 2004
Fundamentos de Java
Fundamentos de Java
    Principios Básicos de la POO
               en Java
         Superclase
             o
         Clase Base

                                          Vehículo


                     DosRuedas                              CuatroRuedas


         Bicicleta          Motocicleta              Auto              Camión




                                                                 Subclase
                                                                    o
                                                              Clase Derivada
     Herencia
                                                                                Copyright © 2004
Fundamentos de Java
Fundamentos de Java
    Principios Básicos de la POO
               en Java

     El Polimorfismo se puede llevar a cabo con
      nombres de métodos iguales, pero diferentes
      implementaciones basadas en los parámetros
      pasados o en los objetos invocados.




                                               Copyright © 2004
Fundamentos de Java
Fundamentos de Java

        Un Programa Java simple
    Toda aplicación                     El método main
    Java debe estar                       es similar al
     dentro de una                      encontrado en
         clase                              C y C++


         public class Simple {
             public static void main (String args[]) {
                  System.out.println(“Hola Mundo”);
             }
         }


                      El programa
                      imprime por
                        pantalla
                      Hola Mundo

                                                          Copyright © 2004
Fundamentos de Java
Fundamentos de Java

          Un Applet Java Simple
                                        La funcionalidad
   /* Importacion de Paquetes */        es proporcionada
   import java.applet.Applet;            por las clases
   import java.awt.Graphics;               importadas


   public class SimpleApplet extends Applet {
          public void paint(Graphics g) {
             g.drawstring(“Un Applet Java Simple”, 25,25);
          }
   }

                   Las applets
                   carecen del
                  método main




                                                      Copyright © 2004
Fundamentos de Java
Fundamentos de Java

              Invocando el Applet
  Archivo HTML que invoca el applet:

  <html>
  <head>
  <title> Applet Simple</title>
  <body>
  <applet code="SimpleApplet.class“ width=200 height=50>
  </applet>
  </body>
  </html>




                                                    Copyright © 2004
Fundamentos de Java
Fundamentos de Java

                      Resumen
      Se presentó la historia de Java
      Se discutieron los principios básicos de los lenguajes de
       programación orientados a objetos
      Se comparó Java con C++
      Se discutieron las características de Java
      Se aprendió acerca de la plataforma de Java
      Se explicó el impacto de Java en la WWW
      Se aprendió a escribir programas Java simples
      Se explicaron los principios       de   la   Programación
       Orientada a Objetos en Java



                                                           Copyright © 2004
Fundamentos de Java
Fundamentos de Java




   Operadores,
   Expresiones y Flujos de
   Control


                                Copyright © 2004
Fundamentos de Java
Fundamentos de Java

       Objetivos de Aprendizaje
    • Aprender las elementos fundamentales de
      Java: tipos de datos y variables
    • Aprender acerca de los diferentes tipos de
      operadores en Java
    • Conocer la precedencia de operadores
    • Entender las conversiones de tipo
    • Discutir las estructuras de control en Java




                                                    Copyright © 2004
Fundamentos de Java
Fundamentos de Java

       Tipos de Datos en Java




                                Copyright © 2004
Fundamentos de Java
Fundamentos de Java

        Tipos de Datos en Java
     • Tipos que almacenan valores enteros:
        byte      -27 hasta 27 – 1
        short     -215 hasta 215 – 1
        int       -231 hasta 231 – 1
        long      -263 hasta 263 – 1

     • Tipos que almacenan valores reales:
        float     -3.4 * 1038 hasta 3.4 * 1038
        double    -1.8 * 10308 hasta 1.8 * 10308

     • Tipos que almacenan valores Booleanos:
        boolean   true o false (verdadero o falso)




                                                     Copyright © 2004
Fundamentos de Java
Fundamentos de Java

        Tipos de Datos en Java
      Tipo de Dato   Tamaño    Ejemplo
     boolean         1 byte    true
     byte            1 byte      2
     char            2 bytes    „a‟
     short           2 bytes     5
     int             4 bytes    154
     long            8 bytes   17952
     float           4 bytes   5.51f
     double          8 bytes   16.45

                                         Copyright © 2004
Fundamentos de Java
Fundamentos de Java

         Tipos de Datos en Java
    • Los tres tipos de referencia provistos por Java
      son los arreglos, clases e interfaz
    • En lenguajes como C y C++, el tamaño del tipo
      de datos puede variar entre plataformas y es
      dependiente de la máquina. En Java el tamaño
      de cada tipo de datos primitivo es el mismo sin
      importar la plataforma.




                                                  Copyright © 2004
Fundamentos de Java
Fundamentos de Java
                    Clases Envolventes
  • Proporcionan la funcionalidad de una clase para un tipo de
    datos primitivo.
  • Proveen métodos que permiten manipular el tipo de dato
    que envuelven.

           Clase Envolvente         Tipo primitvo          Métodos
                                      envuelto
        Boolean               boolean               booleanValue(),
                                                    valueOf()
        Character             char                  charValue()
        Byte                  byte
                                                    byteValue(),
        Short                 short
                                                    shortValue(),
        Integer               int                   intValue(),
                                                    floatValue(),
        Long                  long
                                                    doubleValue(),
        Float                 float                 valueOf()
        Double                double


                                                                      Copyright © 2004
Fundamentos de Java
Fundamentos de Java

 Las Clases BigInteger y BigDecimal
  • Estas clase permiten realizar operaciones sobre
    números largos.

  •BigInteger provee la abstracción de enteros de un
   ‘tamaño de palabra infinito’ representados por el tipo
   de datos int.

  •BigDecimal se usa para representar dígitos a la
   derecha del punto decimal en una escala de un
   entero de 32-bit.


                                                    Copyright © 2004
Fundamentos de Java
Fundamentos de Java

   Las Clases String y StringBuffer
   • Se usan para almacenar cadenas de caracteres.

   • Se pueden usar para: examinar los caracteres
     contenidos en un texto, buscar subcadenas,
     comparar cadenas, etc.

   •String es inmutable y StringBuffer es
    mutable.    Este    último   implementa la
    concatenación de cadenas de caracteres.



                                                Copyright © 2004
Fundamentos de Java
Fundamentos de Java

                   Identificadores
   • Los identificadores en Java siguen las
     siguientes reglas:
      – Comienzan con una letra y pueden contener letras, números
        y los caracteres underscore (_) y dólar ($)
      – No existen restricciones de longitud en los identificadores
      – No pueden contener espacios en blanco
      – Son sensibles a mayúsculas y minúsculas
      – No deben coincidir con las palabras reservadas del
        lenguaje. Ej. while, for, int




                                                               Copyright © 2004
Fundamentos de Java
Fundamentos de Java

           Convención de Nombres
   • Para conservar la legibilidad, la mayoría de los programadores en
     Java usan una convención de nombres simples para nombrar las
     diferentes variables usadas en los programas:
                                                       Cuando es un
         Usualmente la                           identificador compuesto
       primera letra para                        se coloca la primera letra
      variables y métodos                           en mayúscula a las
          es minúscula                              palabras siguientes
                              int areaRectangulo;
                              int getArea();
                              class EmpleadoDelMes
   Solo los identificadores
     de clases poseen la
   primera letra Mayúscula

                                                                     Copyright © 2004
Fundamentos de Java
Fundamentos de Java

          Declaración de variables

    La declaración                                   Toda declaración
   comienza con el                                   debe terminar con
     tipo de dato                                      punto y coma

                     int numPersonas,idPersona;




                         Luego del tipo de dato se
                          encuentra la variable o
                             lista de variables
                           separadas por comas




                                                                 Copyright © 2004
Fundamentos de Java
Fundamentos de Java

        Inicialización de variables
     Al igual que en C++,                          Al declarar podemos
      podemos declarar                                 inicializar el
    variables en cualquier                           contenido de las
       parte del código                                  variables


                 int numPersonas = 0;
                 int idPersona;
                 idPersona = 1011;



                       Java no permite el uso de
                          variables sin previa
                             inicialización


                                                                   Copyright © 2004
Fundamentos de Java
Fundamentos de Java

                      Alcance y Bloques
      Los bloques
                                                    Las variables
     se definen con
                                                  declaradas en un
        llaves { }
                        {                            bloque solo
                                                   existen en ese
                            int var1 = 10;             bloque
                        }
                        {
                            var += 10;
                                              La compilación
      Son utiles en     }
                                             de esta sentencia
       sentencias                             genera un error
       for, if,
        while…




                                                            Copyright © 2004
Fundamentos de Java
Fundamentos de Java

            Operadores en Java

    • Los operadores se usan para realizar alguna
      función particular sobre uno, dos o tres de los
      operandos en una expresion.
    • Dependiendo de la cantidad de operandos, se
      pueden clasificar a los operadores en:
      – Unarios:       var++; --var;
      – Binarios:      var1 = var1 * 40;
      – Ternarios:     var1 = (a<b)?15:30;




                                                        Copyright © 2004
Fundamentos de Java
Fundamentos de Java

          Operadores en Java
      Según su funcionalidad, los operadores pueden
      ser clasificados en:
       • Aritméticos
       • Relacionales y Condicionales
       • Ternarios
       • De Bits
       • De Asignación




                                                Copyright © 2004
Fundamentos de Java
Fundamentos de Java

        Operadores Aritméticos

      Operador     Uso                  Descripción
         +       op1 + op2   Suma op1 y op2
         -       op1 - op2   Resta op1 y op2
         *       op1 * op2   Multiplica op1 y op2
         /       op1 / op2   Divide op1 entre op2
         %       op1 % op2   Calcula el residuo de dividir op1
                             entre op2




                                                                 Copyright © 2004
Fundamentos de Java
Fundamentos de Java

      Operadores Relacionales y
           Condicionales
      Operador      Uso                  Verdadero si
         >       op1 > op2     op1 mayor que op2
        >=       op1 >= op2    op1 mayor o igual que op2
         <       op1 < op2     op1 menor que op2
        <=       op1 <= op2    op1 menor o igual que op2
        ==       op1 == op2    op1 y op2 son iguales
         !=      op1 != op2    op1 y op2 son distintos
        &&       op1 && op2    op1 y op2 son verdaderos
         ||       op1 || op2   op1 ó op2 son verdaderos
         !          !op1       op1 es falso


                                                           Copyright © 2004
Fundamentos de Java
Fundamentos de Java

                 Operador Ternario
    •Operador ? :

    •Sintaxis:
    variable = expression ? operand1 : operand2


    Si expression retorna true, operand1 es asignado a
    variable
    Si expression retorna false, operand2 es asignado
    a variable




                                                         Copyright © 2004
Fundamentos de Java
Fundamentos de Java

                 Operadores de Bits

      Operador         Uso       Resultado
         &           110 & 011     010
         |           010 | 011     011
         ^           110 ^ 011     101




                                             Copyright © 2004
Fundamentos de Java
Fundamentos de Java

      Operadores de Asignación
     Operador      Uso        Equivalente a
       +=       op1 += op2   op1 = op1 + op2
        -=      op1 -= op2   op1 = op1 - op2
       *=       op1 *= op2   op1 = op1 * op2
        /=      op1 /= op2   op1 = op1 / op2
       %=       op1 %= op2   op1 = op1 % op2
       &=       op1 &= op2   op1 = op1 & op2
        |=      op1 |= op2   op1 = op1 | op2
       ^=       op1 ^= op2   op1 = op1 ^ op2




                                               Copyright © 2004
Fundamentos de Java
Fundamentos de Java

     Precedencia de Operadores




                                 Copyright © 2004
Fundamentos de Java
Fundamentos de Java

            Conversión de Tipos

                   Tipo1 v1; Tipo2 v2;
                   v1 = v2;
    • La Conversión Automática de tipo se realiza en Java
     siempre que el tipo de la expresión a la derecha (v2)
     pueda ser llevado en forma segura al tipo de la expresión a
     mano izquierda (v1)




                                                            Copyright © 2004
Fundamentos de Java
Fundamentos de Java

            Conversión de Tipos

    No se puede convertir automáticamente un float a un int
     porque el primero requiere de más espacio de
     almacenamiento que el segundo, lo que puede resultar en
     pérdida de información

    Para forzar la conversión, se debe hacer una Conversión
     Explicita de tipos, tal como se muestra a continuación:
                int a;
                float b=12233.22;
                a = (int) b;




                                                         Copyright © 2004
Fundamentos de Java
Fundamentos de Java

         Conversión de Tipos




                                Copyright © 2004
Fundamentos de Java
Fundamentos de Java

                     Arreglos
    • Almacenan valores de un mismo tipo, el índice del
      arreglo identifica cada elemento del arreglo

    • Creación:
       int x[] = {5,2,0};

       float fArray[] = new float[10];

       String[] s = {“uno”, “dos”};

       String[] s = new String[]{“uno”, “dos”};




                                                   Copyright © 2004
Fundamentos de Java
Fundamentos de Java

              Arreglos




                                Copyright © 2004
Fundamentos de Java
Fundamentos de Java

           Estructuras de Control
    • Sentencias if            Ejemplo:

       – if(){ }                  int x =1, y=4, mayor=0;
                                  if( x > y ){
       – if(){ }else{ }               mayor = x;
       – if(){ }else if(){ }      }else{
                                      mayor = y;
                                  }




                                                            Copyright © 2004
Fundamentos de Java
Fundamentos de Java

            Estructuras de Control
    • Bucles                       Ejemplo:

       – for(;;){}                    int i = 0, suma = 0;
                                      while( i < 5 ){
       – while(){}                        suma = suma + (i++) ;
       – do{}while();                 }

    Ejemplo:                       Ejemplo:

       int suma = 0;                  int i = 0, suma = 0;
       for(int i =0; i<5 ; i++){      do {
            suma = suma +i ;              suma = suma + ( i++ ) ;
       }                              }while( i < 5 );

                                                                    Copyright © 2004
Fundamentos de Java
Fundamentos de Java

            Estructuras de Control
    • switch-case                    •Las sentencias break y

     int var = 2, opcion;
                                     continue permiten salir del ciclo
                                     más interno o continuar al inicio
     switch(var){
                                     del bloque más interno
           case 1: var = var + 1;
                                     respectivamente
                    break;

           case 2: var = var +2;

                    break;

           default: var = var +10;

     }

    System.out.println(var);

    Salida: 4



                                                                         Copyright © 2004
Fundamentos de Java
Fundamentos de Java

                         Resumen

     Se aprendió acerca de los elementos fundamentales

      de Java: tipos de datos y variables

     Se explicó la declaración e inicialización de variables

     Se aprendió acerca de los diferentes tipos de operadores en Java

     Se discutió acerca de la precedencia de operadores

     Se explicaron las conversiones de tipos en Java

     Se presentaron las estructuras de control en Java




                                                                Copyright © 2004

Mais conteúdo relacionado

Destaque

Clémence Ansault- Book style champêtre
Clémence Ansault- Book style champêtreClémence Ansault- Book style champêtre
Clémence Ansault- Book style champêtreClémence Ansault
 
Compte rendu Symposium sur les risques psycho-sociaux
Compte rendu Symposium sur les risques psycho-sociauxCompte rendu Symposium sur les risques psycho-sociaux
Compte rendu Symposium sur les risques psycho-sociauxmayor-formation
 
MADE IN Ouffet (2015)
MADE IN Ouffet (2015)MADE IN Ouffet (2015)
MADE IN Ouffet (2015)CCILVN
 
Agenda Items 1 & 2.a
Agenda Items 1 & 2.aAgenda Items 1 & 2.a
Agenda Items 1 & 2.ajdpicard
 
Kadidja ci et conf eoa
Kadidja ci et conf eoaKadidja ci et conf eoa
Kadidja ci et conf eoaPABE BENIN
 
Genesis de cabeza y cuello
Genesis de cabeza y cuelloGenesis de cabeza y cuello
Genesis de cabeza y cuelloJuan Tipismana
 
Présentation AGA 2015
Présentation AGA 2015Présentation AGA 2015
Présentation AGA 2015orbitealuminae
 
Finance: Le guide d'application du Code de gouvernance Afep-Medef a été mis à...
Finance: Le guide d'application du Code de gouvernance Afep-Medef a été mis à...Finance: Le guide d'application du Code de gouvernance Afep-Medef a été mis à...
Finance: Le guide d'application du Code de gouvernance Afep-Medef a été mis à...Groupe SFC, cabinet d'expertise comptable
 
Faits saillants session_image_st-elie
Faits saillants session_image_st-elieFaits saillants session_image_st-elie
Faits saillants session_image_st-elieChemin de Saint-Élie
 
Los Proyectos de Aula
Los Proyectos de AulaLos Proyectos de Aula
Los Proyectos de AulaOlga Lugo
 
Recomanacions llibres Nadal 2011
Recomanacions llibres Nadal 2011Recomanacions llibres Nadal 2011
Recomanacions llibres Nadal 2011Practiques2
 
Yves Doyon du Canada
Yves Doyon du Canada Yves Doyon du Canada
Yves Doyon du Canada Yves Doyon
 
Escuela normal superior_del_distrito_de_barranquilla
Escuela normal superior_del_distrito_de_barranquillaEscuela normal superior_del_distrito_de_barranquilla
Escuela normal superior_del_distrito_de_barranquillaAndrea Carolina
 
L'installation d'un pare douche sur une baignoire
L'installation d'un pare douche sur une baignoireL'installation d'un pare douche sur une baignoire
L'installation d'un pare douche sur une baignoireGENICIMO
 
Le Premier ministre Evans PauL, déjà un mois à la Primature
Le Premier ministre Evans PauL, déjà un mois à la PrimatureLe Premier ministre Evans PauL, déjà un mois à la Primature
Le Premier ministre Evans PauL, déjà un mois à la PrimatureEvans Paul
 
Quemaduras (Por: Forilan Jacome)
Quemaduras (Por: Forilan Jacome)Quemaduras (Por: Forilan Jacome)
Quemaduras (Por: Forilan Jacome)froy1072
 

Destaque (20)

Présentation Chaire A&NMT
Présentation Chaire A&NMTPrésentation Chaire A&NMT
Présentation Chaire A&NMT
 
Clémence Ansault- Book style champêtre
Clémence Ansault- Book style champêtreClémence Ansault- Book style champêtre
Clémence Ansault- Book style champêtre
 
Compte rendu Symposium sur les risques psycho-sociaux
Compte rendu Symposium sur les risques psycho-sociauxCompte rendu Symposium sur les risques psycho-sociaux
Compte rendu Symposium sur les risques psycho-sociaux
 
MADE IN Ouffet (2015)
MADE IN Ouffet (2015)MADE IN Ouffet (2015)
MADE IN Ouffet (2015)
 
Agenda Items 1 & 2.a
Agenda Items 1 & 2.aAgenda Items 1 & 2.a
Agenda Items 1 & 2.a
 
Kadidja ci et conf eoa
Kadidja ci et conf eoaKadidja ci et conf eoa
Kadidja ci et conf eoa
 
Genesis de cabeza y cuello
Genesis de cabeza y cuelloGenesis de cabeza y cuello
Genesis de cabeza y cuello
 
Présentation AGA 2015
Présentation AGA 2015Présentation AGA 2015
Présentation AGA 2015
 
Finance: Le guide d'application du Code de gouvernance Afep-Medef a été mis à...
Finance: Le guide d'application du Code de gouvernance Afep-Medef a été mis à...Finance: Le guide d'application du Code de gouvernance Afep-Medef a été mis à...
Finance: Le guide d'application du Code de gouvernance Afep-Medef a été mis à...
 
Plan daction
Plan dactionPlan daction
Plan daction
 
Faits saillants session_image_st-elie
Faits saillants session_image_st-elieFaits saillants session_image_st-elie
Faits saillants session_image_st-elie
 
Los Proyectos de Aula
Los Proyectos de AulaLos Proyectos de Aula
Los Proyectos de Aula
 
Recomanacions llibres Nadal 2011
Recomanacions llibres Nadal 2011Recomanacions llibres Nadal 2011
Recomanacions llibres Nadal 2011
 
Yves Doyon du Canada
Yves Doyon du Canada Yves Doyon du Canada
Yves Doyon du Canada
 
Escuela normal superior_del_distrito_de_barranquilla
Escuela normal superior_del_distrito_de_barranquillaEscuela normal superior_del_distrito_de_barranquilla
Escuela normal superior_del_distrito_de_barranquilla
 
L'installation d'un pare douche sur une baignoire
L'installation d'un pare douche sur une baignoireL'installation d'un pare douche sur une baignoire
L'installation d'un pare douche sur une baignoire
 
Generaciones Talgo
Generaciones TalgoGeneraciones Talgo
Generaciones Talgo
 
facultad de biologia
facultad de biologiafacultad de biologia
facultad de biologia
 
Le Premier ministre Evans PauL, déjà un mois à la Primature
Le Premier ministre Evans PauL, déjà un mois à la PrimatureLe Premier ministre Evans PauL, déjà un mois à la Primature
Le Premier ministre Evans PauL, déjà un mois à la Primature
 
Quemaduras (Por: Forilan Jacome)
Quemaduras (Por: Forilan Jacome)Quemaduras (Por: Forilan Jacome)
Quemaduras (Por: Forilan Jacome)
 

Semelhante a Java Fundamentos

Fundamentos de Java
Fundamentos de Java Fundamentos de Java
Fundamentos de Java jmosorio777
 
[ES] Primeros pasos con la Plataforma Java
[ES] Primeros pasos con la Plataforma Java[ES] Primeros pasos con la Plataforma Java
[ES] Primeros pasos con la Plataforma JavaEudris Cabrera
 
[ES] Introdución a la plataforma java
[ES] Introdución a la plataforma java [ES] Introdución a la plataforma java
[ES] Introdución a la plataforma java Eudris Cabrera
 
1 fundamentos java
1 fundamentos java1 fundamentos java
1 fundamentos javaayreonmx
 
Mi lenguaje de programación de preferencia
Mi lenguaje de programación de preferenciaMi lenguaje de programación de preferencia
Mi lenguaje de programación de preferenciaglfloresgilberto
 
Clase2
Clase2Clase2
Clase2rilara
 
java,conceptos basicos
java,conceptos basicosjava,conceptos basicos
java,conceptos basicosMariano Galvez
 
Mi lenguaje de programacion de preferencia
Mi lenguaje de programacion de preferenciaMi lenguaje de programacion de preferencia
Mi lenguaje de programacion de preferenciaNelson Rivera
 
Mi lenguaje de programación de preferencia
Mi lenguaje de programación de preferenciaMi lenguaje de programación de preferencia
Mi lenguaje de programación de preferenciaJacob
 
Introducción a Scala
Introducción a ScalaIntroducción a Scala
Introducción a Scalajose diaz
 

Semelhante a Java Fundamentos (20)

Fundamentos de Java
Fundamentos de Java Fundamentos de Java
Fundamentos de Java
 
1.introduccion java
1.introduccion java1.introduccion java
1.introduccion java
 
[ES] Primeros pasos con la Plataforma Java
[ES] Primeros pasos con la Plataforma Java[ES] Primeros pasos con la Plataforma Java
[ES] Primeros pasos con la Plataforma Java
 
S01.s1 - Lenguaje Java-1.pdf
S01.s1 - Lenguaje Java-1.pdfS01.s1 - Lenguaje Java-1.pdf
S01.s1 - Lenguaje Java-1.pdf
 
Introducción a la Programación Orientada a Objetos
Introducción a la Programación Orientada a ObjetosIntroducción a la Programación Orientada a Objetos
Introducción a la Programación Orientada a Objetos
 
[ES] Introdución a la plataforma java
[ES] Introdución a la plataforma java [ES] Introdución a la plataforma java
[ES] Introdución a la plataforma java
 
Introduccion a Java
Introduccion a JavaIntroduccion a Java
Introduccion a Java
 
1 fundamentos java
1 fundamentos java1 fundamentos java
1 fundamentos java
 
Mi lenguaje de programación de preferencia
Mi lenguaje de programación de preferenciaMi lenguaje de programación de preferencia
Mi lenguaje de programación de preferencia
 
Clase2
Clase2Clase2
Clase2
 
JAVA
JAVAJAVA
JAVA
 
Programación java 1
Programación java 1Programación java 1
Programación java 1
 
Resumen
ResumenResumen
Resumen
 
java,conceptos basicos
java,conceptos basicosjava,conceptos basicos
java,conceptos basicos
 
Mi lenguaje de programacion de preferencia
Mi lenguaje de programacion de preferenciaMi lenguaje de programacion de preferencia
Mi lenguaje de programacion de preferencia
 
Mi lenguaje de programación de preferencia
Mi lenguaje de programación de preferenciaMi lenguaje de programación de preferencia
Mi lenguaje de programación de preferencia
 
Introducción a Scala
Introducción a ScalaIntroducción a Scala
Introducción a Scala
 
JAVA.pptx
JAVA.pptxJAVA.pptx
JAVA.pptx
 
C1 java introduccion
C1 java introduccionC1 java introduccion
C1 java introduccion
 
C1 java introduccion
C1 java introduccionC1 java introduccion
C1 java introduccion
 

Mais de kjrojas

LibreOffice
LibreOfficeLibreOffice
LibreOfficekjrojas
 
Presentacion flisolabril2011def
Presentacion flisolabril2011defPresentacion flisolabril2011def
Presentacion flisolabril2011defkjrojas
 
Interrupcion Yconflictodel Hardware
Interrupcion Yconflictodel HardwareInterrupcion Yconflictodel Hardware
Interrupcion Yconflictodel Hardwarekjrojas
 
Lpiii tema5 - jdbc
Lpiii tema5 - jdbcLpiii tema5 - jdbc
Lpiii tema5 - jdbckjrojas
 
Taller redes
Taller redesTaller redes
Taller redeskjrojas
 
Taller redes
Taller redesTaller redes
Taller redeskjrojas
 

Mais de kjrojas (6)

LibreOffice
LibreOfficeLibreOffice
LibreOffice
 
Presentacion flisolabril2011def
Presentacion flisolabril2011defPresentacion flisolabril2011def
Presentacion flisolabril2011def
 
Interrupcion Yconflictodel Hardware
Interrupcion Yconflictodel HardwareInterrupcion Yconflictodel Hardware
Interrupcion Yconflictodel Hardware
 
Lpiii tema5 - jdbc
Lpiii tema5 - jdbcLpiii tema5 - jdbc
Lpiii tema5 - jdbc
 
Taller redes
Taller redesTaller redes
Taller redes
 
Taller redes
Taller redesTaller redes
Taller redes
 

Último

Documentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosDocumentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosAlbanyMartinez7
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptchaverriemily794
 
Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1ivanapaterninar
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxtjcesar1
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfedepmariaperez
 
Análisis de Artefactos Tecnologicos (3) (1).pdf
Análisis de Artefactos Tecnologicos  (3) (1).pdfAnálisis de Artefactos Tecnologicos  (3) (1).pdf
Análisis de Artefactos Tecnologicos (3) (1).pdfsharitcalderon04
 
certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfFernandoOblitasVivan
 
David_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptxDavid_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptxDAVIDROBERTOGALLEGOS
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfcristianrb0324
 
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptxHugoGutierrez99
 
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...Marketing BRANDING
 
Trabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointTrabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointValerioIvanDePazLoja
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúCEFERINO DELGADO FLORES
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)JuanStevenTrujilloCh
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdfBetianaJuarez1
 
La tecnología y su impacto en la sociedad
La tecnología y su impacto en la sociedadLa tecnología y su impacto en la sociedad
La tecnología y su impacto en la sociedadEduardoSantiagoSegov
 
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024u20211198540
 
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docx
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docxPLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docx
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docxhasbleidit
 

Último (20)

Documentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosDocumentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos Juridicos
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
 
Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdf
 
Análisis de Artefactos Tecnologicos (3) (1).pdf
Análisis de Artefactos Tecnologicos  (3) (1).pdfAnálisis de Artefactos Tecnologicos  (3) (1).pdf
Análisis de Artefactos Tecnologicos (3) (1).pdf
 
certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdf
 
David_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptxDavid_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptx
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdf
 
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
 
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
 
Trabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointTrabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power Point
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
El camino a convertirse en Microsoft MVP
El camino a convertirse en Microsoft MVPEl camino a convertirse en Microsoft MVP
El camino a convertirse en Microsoft MVP
 
Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
 
La tecnología y su impacto en la sociedad
La tecnología y su impacto en la sociedadLa tecnología y su impacto en la sociedad
La tecnología y su impacto en la sociedad
 
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
 
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docx
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docxPLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docx
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docx
 

Java Fundamentos

  • 1. Fundamentos de Java Fundamentos de Java Tema 1 Copyright © 2004
  • 2. Fundamentos de Java Fundamentos de Java Objetivos  Discutir acerca de las características de Java  Comparar Java con C/C++  Aprender acerca de la plataforma Java  Conocer acerca del efecto de Java en la WWW  Definir Clases y Objetos  Aprender los principios básicos de la Programación Orientada Objetos en Java Copyright © 2004
  • 3. Fundamentos de Java Fundamentos de Java Introducción • Java surge de la necesidad de tener un lenguaje orientado a objetos poderoso pero simple • Java tiene una estructura similar a C++ • Java es independiente de plataforma Copyright © 2004
  • 4. Fundamentos de Java Fundamentos de Java Java vs. C++ C++ Java Orientación a Objetos Opcional Obligatoria Variable y Funciones Opcional No existen Globales Multiplataforma Código Fuente Código fuente y bytecode (a veces) Administración de memoria Manual Automática (Garbage Collector) Multihilos No Si Herencia Múltiple Si No Apuntadores Si No Copyright © 2004
  • 5. Fundamentos de Java Fundamentos de Java ¿Características de Java?  Simple Seguro  Portable Distribuido Orientado a objetos Robusto Dinámico Interpretado De arquitectura neutral Multihilos Copyright © 2004
  • 6. Fundamentos de Java Fundamentos de Java ¿Qué es Java? Java es considerado una Plataforma de Desarrollo La mayoría de las características básicas de Java son derivadas de C y C++ Java es utilizado para desarrollar dos tipos de programas: Aplicaciones y Applets El Java Development Kit (JDK) es una herramienta que los desarrolladores necesitan para compilar, depurar y ejecutar programas Java Copyright © 2004
  • 7. Fundamentos de Java Fundamentos de Java Independencia de la Plataforma • Java hace posible la creación de ejecutables binarios que puedan ejecutarse en múltiples plataformas. • El compilador Java (javac), convierte el código fuente (archivo .java) a bytecodes (archivo .class). • Los bytecodes son interpretados por el intérprete de Java, y convertidos a una forma ejecutable que entiende la plataforma en la cual el sistema de tiempo de ejecución de Java se está ejecutando. Copyright © 2004
  • 8. Fundamentos de Java Fundamentos de Java Independencia de la Plataforma Copyright © 2004
  • 9. Fundamentos de Java Fundamentos de Java La Plataforma Java • Es una plataforma basada en software y se ejecuta sobre cualquier otra plataforma basada en hardware. • La Plataforma Java posee dos componentes: - La Maquina Virtual de Java (JVM) - La Interfaz de Programación de Aplicaciones o API (Application Programming Interface) Copyright © 2004
  • 10. Fundamentos de Java Fundamentos de Java Máquina Virtual de Java(JVM) • La JVM es una aplicación ejecutable que representa a un procesador genérico en el cual corren los bytecodes de Java. • Las implementaciones concretas de la JVM se encuentran en muchas plataformas. • Toda aplicación Java debe ejecutarse en una instancia de la JVM. La JVM comienza a ejecutar la aplicación invocando el método main() de la clase inicial de la aplicación. Copyright © 2004
  • 11. Fundamentos de Java Fundamentos de Java Modelo de seguridad de Java • El modelo de seguridad de Java provee una caja de arena que protege a las aplicaciones y applets Java de ser atacados por virus. • La caja de arena se puede personalizar en dos de sus componentes: El administrador de seguridad (java.lang.SecurityManager) El cargador de clases(Cargador de Clases Primordial y Objetos Cargadores de Clases ) Copyright © 2004
  • 12. Fundamentos de Java Fundamentos de Java Java API Copyright © 2004
  • 13. Fundamentos de Java Fundamentos de Java Impacto de Java en la WWW Copyright © 2004
  • 14. Fundamentos de Java Fundamentos de Java Clases y Objetos • Las clases están compuestas por un conjunto de miembros (datos y funciones) • Una clase se usa como el modelo que deben seguir los objetos • Un objeto es una instancia de una clase • Las clases y objetos son similares a los tipos de datos y a las variables Copyright © 2004
  • 15. Fundamentos de Java Fundamentos de Java Clases y Objetos Copyright © 2004
  • 16. Fundamentos de Java Fundamentos de Java Clases y Objetos class Computer{ Definición boolean cpu; de boolean keyboard; Clase boolean mouse; String monitor; } Creación Computer objeto1 = new Computer(); de objeto Copyright © 2004
  • 17. Fundamentos de Java Fundamentos de Java Principios Básicos de la POO en Java • Java esta regido bajo el Paradigma de Programación Orientada a Objetos. • Java cumple con las características claves de la POO:  Encapsulación  Herencia  Polimorfismo Copyright © 2004
  • 18. Fundamentos de Java Fundamentos de Java Principios Básicos de la POO en Java Miembros Públicos: Sirven como interfaces entre la cápsula y el mundo exterior. Miembros privados Cápsula: Mantiene a un conjunto de elementos agrupados semánticamente. Encapsulación Copyright © 2004
  • 19. Fundamentos de Java Fundamentos de Java Principios Básicos de la POO en Java Superclase o Clase Base Vehículo DosRuedas CuatroRuedas Bicicleta Motocicleta Auto Camión Subclase o Clase Derivada Herencia Copyright © 2004
  • 20. Fundamentos de Java Fundamentos de Java Principios Básicos de la POO en Java El Polimorfismo se puede llevar a cabo con nombres de métodos iguales, pero diferentes implementaciones basadas en los parámetros pasados o en los objetos invocados. Copyright © 2004
  • 21. Fundamentos de Java Fundamentos de Java Un Programa Java simple Toda aplicación El método main Java debe estar es similar al dentro de una encontrado en clase C y C++ public class Simple { public static void main (String args[]) { System.out.println(“Hola Mundo”); } } El programa imprime por pantalla Hola Mundo Copyright © 2004
  • 22. Fundamentos de Java Fundamentos de Java Un Applet Java Simple La funcionalidad /* Importacion de Paquetes */ es proporcionada import java.applet.Applet; por las clases import java.awt.Graphics; importadas public class SimpleApplet extends Applet { public void paint(Graphics g) { g.drawstring(“Un Applet Java Simple”, 25,25); } } Las applets carecen del método main Copyright © 2004
  • 23. Fundamentos de Java Fundamentos de Java Invocando el Applet Archivo HTML que invoca el applet: <html> <head> <title> Applet Simple</title> <body> <applet code="SimpleApplet.class“ width=200 height=50> </applet> </body> </html> Copyright © 2004
  • 24. Fundamentos de Java Fundamentos de Java Resumen  Se presentó la historia de Java  Se discutieron los principios básicos de los lenguajes de programación orientados a objetos  Se comparó Java con C++  Se discutieron las características de Java  Se aprendió acerca de la plataforma de Java  Se explicó el impacto de Java en la WWW  Se aprendió a escribir programas Java simples  Se explicaron los principios de la Programación Orientada a Objetos en Java Copyright © 2004
  • 25. Fundamentos de Java Fundamentos de Java Operadores, Expresiones y Flujos de Control Copyright © 2004
  • 26. Fundamentos de Java Fundamentos de Java Objetivos de Aprendizaje • Aprender las elementos fundamentales de Java: tipos de datos y variables • Aprender acerca de los diferentes tipos de operadores en Java • Conocer la precedencia de operadores • Entender las conversiones de tipo • Discutir las estructuras de control en Java Copyright © 2004
  • 27. Fundamentos de Java Fundamentos de Java Tipos de Datos en Java Copyright © 2004
  • 28. Fundamentos de Java Fundamentos de Java Tipos de Datos en Java • Tipos que almacenan valores enteros: byte -27 hasta 27 – 1 short -215 hasta 215 – 1 int -231 hasta 231 – 1 long -263 hasta 263 – 1 • Tipos que almacenan valores reales: float -3.4 * 1038 hasta 3.4 * 1038 double -1.8 * 10308 hasta 1.8 * 10308 • Tipos que almacenan valores Booleanos: boolean true o false (verdadero o falso) Copyright © 2004
  • 29. Fundamentos de Java Fundamentos de Java Tipos de Datos en Java Tipo de Dato Tamaño Ejemplo boolean 1 byte true byte 1 byte 2 char 2 bytes „a‟ short 2 bytes 5 int 4 bytes 154 long 8 bytes 17952 float 4 bytes 5.51f double 8 bytes 16.45 Copyright © 2004
  • 30. Fundamentos de Java Fundamentos de Java Tipos de Datos en Java • Los tres tipos de referencia provistos por Java son los arreglos, clases e interfaz • En lenguajes como C y C++, el tamaño del tipo de datos puede variar entre plataformas y es dependiente de la máquina. En Java el tamaño de cada tipo de datos primitivo es el mismo sin importar la plataforma. Copyright © 2004
  • 31. Fundamentos de Java Fundamentos de Java Clases Envolventes • Proporcionan la funcionalidad de una clase para un tipo de datos primitivo. • Proveen métodos que permiten manipular el tipo de dato que envuelven. Clase Envolvente Tipo primitvo Métodos envuelto Boolean boolean booleanValue(), valueOf() Character char charValue() Byte byte byteValue(), Short short shortValue(), Integer int intValue(), floatValue(), Long long doubleValue(), Float float valueOf() Double double Copyright © 2004
  • 32. Fundamentos de Java Fundamentos de Java Las Clases BigInteger y BigDecimal • Estas clase permiten realizar operaciones sobre números largos. •BigInteger provee la abstracción de enteros de un ‘tamaño de palabra infinito’ representados por el tipo de datos int. •BigDecimal se usa para representar dígitos a la derecha del punto decimal en una escala de un entero de 32-bit. Copyright © 2004
  • 33. Fundamentos de Java Fundamentos de Java Las Clases String y StringBuffer • Se usan para almacenar cadenas de caracteres. • Se pueden usar para: examinar los caracteres contenidos en un texto, buscar subcadenas, comparar cadenas, etc. •String es inmutable y StringBuffer es mutable. Este último implementa la concatenación de cadenas de caracteres. Copyright © 2004
  • 34. Fundamentos de Java Fundamentos de Java Identificadores • Los identificadores en Java siguen las siguientes reglas: – Comienzan con una letra y pueden contener letras, números y los caracteres underscore (_) y dólar ($) – No existen restricciones de longitud en los identificadores – No pueden contener espacios en blanco – Son sensibles a mayúsculas y minúsculas – No deben coincidir con las palabras reservadas del lenguaje. Ej. while, for, int Copyright © 2004
  • 35. Fundamentos de Java Fundamentos de Java Convención de Nombres • Para conservar la legibilidad, la mayoría de los programadores en Java usan una convención de nombres simples para nombrar las diferentes variables usadas en los programas: Cuando es un Usualmente la identificador compuesto primera letra para se coloca la primera letra variables y métodos en mayúscula a las es minúscula palabras siguientes int areaRectangulo; int getArea(); class EmpleadoDelMes Solo los identificadores de clases poseen la primera letra Mayúscula Copyright © 2004
  • 36. Fundamentos de Java Fundamentos de Java Declaración de variables La declaración Toda declaración comienza con el debe terminar con tipo de dato punto y coma int numPersonas,idPersona; Luego del tipo de dato se encuentra la variable o lista de variables separadas por comas Copyright © 2004
  • 37. Fundamentos de Java Fundamentos de Java Inicialización de variables Al igual que en C++, Al declarar podemos podemos declarar inicializar el variables en cualquier contenido de las parte del código variables int numPersonas = 0; int idPersona; idPersona = 1011; Java no permite el uso de variables sin previa inicialización Copyright © 2004
  • 38. Fundamentos de Java Fundamentos de Java Alcance y Bloques Los bloques Las variables se definen con declaradas en un llaves { } { bloque solo existen en ese int var1 = 10; bloque } { var += 10; La compilación Son utiles en } de esta sentencia sentencias genera un error for, if, while… Copyright © 2004
  • 39. Fundamentos de Java Fundamentos de Java Operadores en Java • Los operadores se usan para realizar alguna función particular sobre uno, dos o tres de los operandos en una expresion. • Dependiendo de la cantidad de operandos, se pueden clasificar a los operadores en: – Unarios: var++; --var; – Binarios: var1 = var1 * 40; – Ternarios: var1 = (a<b)?15:30; Copyright © 2004
  • 40. Fundamentos de Java Fundamentos de Java Operadores en Java Según su funcionalidad, los operadores pueden ser clasificados en: • Aritméticos • Relacionales y Condicionales • Ternarios • De Bits • De Asignación Copyright © 2004
  • 41. Fundamentos de Java Fundamentos de Java Operadores Aritméticos Operador Uso Descripción + op1 + op2 Suma op1 y op2 - op1 - op2 Resta op1 y op2 * op1 * op2 Multiplica op1 y op2 / op1 / op2 Divide op1 entre op2 % op1 % op2 Calcula el residuo de dividir op1 entre op2 Copyright © 2004
  • 42. Fundamentos de Java Fundamentos de Java Operadores Relacionales y Condicionales Operador Uso Verdadero si > op1 > op2 op1 mayor que op2 >= op1 >= op2 op1 mayor o igual que op2 < op1 < op2 op1 menor que op2 <= op1 <= op2 op1 menor o igual que op2 == op1 == op2 op1 y op2 son iguales != op1 != op2 op1 y op2 son distintos && op1 && op2 op1 y op2 son verdaderos || op1 || op2 op1 ó op2 son verdaderos ! !op1 op1 es falso Copyright © 2004
  • 43. Fundamentos de Java Fundamentos de Java Operador Ternario •Operador ? : •Sintaxis: variable = expression ? operand1 : operand2 Si expression retorna true, operand1 es asignado a variable Si expression retorna false, operand2 es asignado a variable Copyright © 2004
  • 44. Fundamentos de Java Fundamentos de Java Operadores de Bits Operador Uso Resultado & 110 & 011 010 | 010 | 011 011 ^ 110 ^ 011 101 Copyright © 2004
  • 45. Fundamentos de Java Fundamentos de Java Operadores de Asignación Operador Uso Equivalente a += op1 += op2 op1 = op1 + op2 -= op1 -= op2 op1 = op1 - op2 *= op1 *= op2 op1 = op1 * op2 /= op1 /= op2 op1 = op1 / op2 %= op1 %= op2 op1 = op1 % op2 &= op1 &= op2 op1 = op1 & op2 |= op1 |= op2 op1 = op1 | op2 ^= op1 ^= op2 op1 = op1 ^ op2 Copyright © 2004
  • 46. Fundamentos de Java Fundamentos de Java Precedencia de Operadores Copyright © 2004
  • 47. Fundamentos de Java Fundamentos de Java Conversión de Tipos Tipo1 v1; Tipo2 v2; v1 = v2; • La Conversión Automática de tipo se realiza en Java siempre que el tipo de la expresión a la derecha (v2) pueda ser llevado en forma segura al tipo de la expresión a mano izquierda (v1) Copyright © 2004
  • 48. Fundamentos de Java Fundamentos de Java Conversión de Tipos No se puede convertir automáticamente un float a un int porque el primero requiere de más espacio de almacenamiento que el segundo, lo que puede resultar en pérdida de información Para forzar la conversión, se debe hacer una Conversión Explicita de tipos, tal como se muestra a continuación: int a; float b=12233.22; a = (int) b; Copyright © 2004
  • 49. Fundamentos de Java Fundamentos de Java Conversión de Tipos Copyright © 2004
  • 50. Fundamentos de Java Fundamentos de Java Arreglos • Almacenan valores de un mismo tipo, el índice del arreglo identifica cada elemento del arreglo • Creación: int x[] = {5,2,0}; float fArray[] = new float[10]; String[] s = {“uno”, “dos”}; String[] s = new String[]{“uno”, “dos”}; Copyright © 2004
  • 51. Fundamentos de Java Fundamentos de Java Arreglos Copyright © 2004
  • 52. Fundamentos de Java Fundamentos de Java Estructuras de Control • Sentencias if Ejemplo: – if(){ } int x =1, y=4, mayor=0; if( x > y ){ – if(){ }else{ } mayor = x; – if(){ }else if(){ } }else{ mayor = y; } Copyright © 2004
  • 53. Fundamentos de Java Fundamentos de Java Estructuras de Control • Bucles Ejemplo: – for(;;){} int i = 0, suma = 0; while( i < 5 ){ – while(){} suma = suma + (i++) ; – do{}while(); } Ejemplo: Ejemplo: int suma = 0; int i = 0, suma = 0; for(int i =0; i<5 ; i++){ do { suma = suma +i ; suma = suma + ( i++ ) ; } }while( i < 5 ); Copyright © 2004
  • 54. Fundamentos de Java Fundamentos de Java Estructuras de Control • switch-case •Las sentencias break y int var = 2, opcion; continue permiten salir del ciclo más interno o continuar al inicio switch(var){ del bloque más interno case 1: var = var + 1; respectivamente break; case 2: var = var +2; break; default: var = var +10; } System.out.println(var); Salida: 4 Copyright © 2004
  • 55. Fundamentos de Java Fundamentos de Java Resumen Se aprendió acerca de los elementos fundamentales de Java: tipos de datos y variables Se explicó la declaración e inicialización de variables Se aprendió acerca de los diferentes tipos de operadores en Java Se discutió acerca de la precedencia de operadores Se explicaron las conversiones de tipos en Java Se presentaron las estructuras de control en Java Copyright © 2004