Monografias.com > Computación > Programación
Descargar Imprimir Comentar Ver trabajos relacionados

Programación avanzada en Java




Enviado por Pablo Turmero



Partes: 1, 2


    Monografias.com

    El lenguaje Java

    Monografias.com

    Características principales (I)
    Lenguaje interpretado.
    Fuertemente tipado.
    Sintaxis similar a C/C++.
    Sin punteros: Garbage collection.
    100% portable.
    Integra librearías estándar para:
    Interfaces de usuario.
    Objetos distribuidos.
    Threads.

    Monografias.com

    Características principales (y II)
    Ejecutable desde navegadores web.
    Origen: Aumento de HTML para conseguir páginas Web dinámicas.
    Versiones:
    1995 – JDK 1.0
    1997 – JDK 1.1

    2004 – JDK 1.5

    Monografias.com

    Desarrollo en Java
    Java Development Kit (JDK):
    Java Runtime Environment (JRE):
    Java Virtual Machine.
    Java API: lenguaje básico y librerías estándar.
    Compilador a bytecode.
    Otras herramientas:
    Debuggers.
    Applet viewer.
    Compiladores RMI

    Monografias.com

    Compilación e interpretación
    class Ejemplo {

    }

    class Aux {

    }

    Ejemplo.java
    Compilador Java
    Ejemplo.class
    Aux.class
    Java Virtual Machine
    JVM

    Monografias.com

    Comparativa: Java vs. C++ (I)
    Interpretado

    Portable

    Todo memoria dinámica
    Garbage collection
    No existen punteros

    Todos los métodos virtuales

    No hay herencia múltiple

    Información sobre clases
    en tiempo de ejecución.

    Tratamiento genérico
    de tipos (wrappers).

    Java
    C++
    Compilado

    Aspectos no portables

    Memoria automática y dinámica
    Gestión del programador
    Existen punteros

    No todos los métodos virtuales

    Hay herencia múltiple

    Información muy escasa
    (dynamic_cast).

    Punteros a void.

    Monografias.com

    Comparativa: Java vs. C++ (y II)
    Soporte estándar para interfaces:
    AWT, SWING

    Soporte estándar para concurrencia

    Soporte estándar para objetos
    distribuidos

    Ejecutable en navegadores web

    Homogeneidad del lenguaje

    Lenguaje bien diseñado

    Java
    C++
    No incluido en el lenguaje:
    Microsoft MFC, Borland OWL…

    No incluido en el lenguaje

    No incluido en el lenguaje:
    CORBA, ActiveX

    No ejecutable por navegadores

    Múltiples sintaxis

    Compatibilidad con C

    Monografias.com

    Elementos del lenguaje

    Monografias.com

    Aspectos léxicos
    Ignora múltiples espacios en blanco
    Sentencias separadas por “;”.
    Comentarios:
    /* … */ ? Múltiples líneas de comentario
    // ? Una única línea de comentario
    Case – sensitive.
    Convenios de nomenclatura:
    Clases con mayúscula.
    Métodos y variables con minúscula.
    etc…

    Monografias.com

    Valores y variables
    Tipos básicos:

    Variables y literales:
    Declaración y utilización de variables y literales similar a C/C++.
    byte 1 byte
    char 2 bytes (sin signo, caracteres Unicode, incluyen los ASCII)
    short 2 bytes
    int 4 bytes
    long 8 bytes
    float 4 bytes
    double 8 bytes
    boolean 1 bit (true ó false, no compatible con tipos numéricos)

    Monografias.com

    Compatibilidad entre tipos

    byte b = 42;
    char c = 'a'; // también válido: c = 97;
    short s = 1024;
    int i = 50000;
    long l = 120000;
    float f = 5.67f;
    double d = .1234;
    double result = (f*b) + (i/c) – (d*s);
    Ensanchar: automático
    f = c;
    d = s;
    f = l;
    Estrechar: cast explícito
    c = (char) i;
    b = (byte) d;
    f = (float) d;
    char: cast explícito
    s = (short) c;
    c = (char) s;
    c = (char) b;

    Monografias.com

    Operadores
    En total hay 46 operadores.
    Numéricos:
    +, -, *, /, %, +=, -=, *=, /=, %=, –, ++
    Lógicos:
    &&, ||, !
    Operadores de bit:
    &, |, ^, ~, >>, <<
    Relacionales:
    >, <, >=, <=, ==, !=
    Condicional:
    If-then-else: (condicion) ? acción1 : acción2

    Monografias.com

    Precedencia de operadores
    ( ) [ ] .
    ++ — ~ !
    new
    * / %
    + –
    >> >>> <<
    > >= < <= instanceof
    == !=
    &
    ^
    |
    &&
    ||
    ? :
    = += *= -= /=
    (Gp:) Orden de ejecución de operadores

    (Gp:) Igualdad de precedencia

    Monografias.com

    Arrays
    Declaración:

    int a[];
    a = new int[3];
    int b[] = {1, 2, 3, 4};
    Reserva de tamaño:
    Asignación de valores:

    a[1] = 7;
    b = a;
    Errores:

    a[6] = 7; // Fuera del rango
    a = {1, 2, 3}; // Sólo válido en la inicialización
    int c[5]; // La dimensión sólo al hacer new
    char str[] = “hola”; // Los Strings no son arrays en Java

    Monografias.com

    Arrays multidimensionales
    float a[][] = new float [4][3];
    float m[][] = new float [4][];
    m[0] = new float [2];
    m[1] = new float [5];
    m[2] = new float [m[1].length];
    float x[] = {4.5, 8/3, m[2][1]};
    m[3] = x; // O cualquier expresión que devuelva un float[]
    a[0] = m[1]; // Las variables de array no son constantes
    a[2, 1] = 7.3 // Error de sintaxis: a[2][1]

    Monografias.com

    Expresiones condicionales
    Dos tipos de condicionales.
    if (condición1) acción1 [else acción2] [else if (condición2)…
    switch (expresión) {
    case valor1:

    break;

    case valor2:

    break;

    default:

    }
    (Gp:) byte, char, short o int

    (Gp:) Tienen que ser literales

    Partes: 1, 2

    Página siguiente 

    Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

    Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

    Categorias
    Newsletter