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

El lenguaje de programación Java




Enviado por Pablo Turmero



    Monografias.com

    1
    1 Identificadores
    Nombran variables, funciones, clases y objetos

    Comienza con una letra, un subrayado (_) o un símbolo de dólar ($). Los siguientes caracteres pueden ser letras o dígitos.

    Se distinguen las mayúsculas de las minúsculas

    No hay una longitud máxima establecida para el identificador.

    Monografias.com

    2
    Variables
    Sirven para referirse tanto a objetos como a tipos primitivos.

    Tienen que declararse antes de usarse:
    tipo identificador;
    int posicion;

    Se puede inicializar mediante una asignación:
    tipo identificador = valor;
    int posicion = 0;

    Definición de constantes:
    static final float PI = 3.14159f;

    Monografias.com

    3
    Tipos de datos primitivos
    Se pueden utilizar valores de los siguientes tipos:
    byte (entero de 8 bits)
    short (entero de 16 bits)
    int (entero de 32 bits)
    long (entero de 64 bits)
    float (decimal de 32 bits)
    double (decimal de 64 bits)
    char (Unicode de 16 bits)
    boolean (true, false)

    No se pueden definir tipos.

    Monografias.com

    4
    2 Operadores
    En orden de precedencia:

    Monografias.com

    5
    3 Control de flujo
    if( expresión-booleana )
    {
    sentencias;
    }
    [else {
    sentencias;
    }]
    switch(expresión) {
    case valor1:
    sentencias;
    break;
    case valor2:
    sentencias;
    break;
    [default:
    sentencias;]
    }
    Control de saltos:

    Monografias.com

    6
    Ejemplos
    int saldo;

    if (saldo false, luego c1!=c2
    c1.equals(c2) –> true compara el CONTENIDO de los objetos
    si lo redefinimos en la clase
    (por defecto es igual que ==)
    47
    0
    c2
    valor
    valorInicial
    47
    0
    c1
    valor
    valorInicial

    Monografias.com

    25
    this
    Invocación a otro de los constructores de la clase:
    public Contador (int i) {
    valor=i;
    valorInicial=i;
    }
     
    public Contador(){
    this(0);
    }
    Instancia actual:
    Pasar el objeto actual como parámetro de otro método
    servicio.añadir(this);

    En cualquier método del objeto actual
    this.otroMetodo();

    Monografias.com

    26
    Reglas de alcance
    Porción del programa en el que se puede hacer referencia al identificador

    Un identificador debe ser único dentro de su ámbito

    Alcance de CLASE:
    los métodos de una clase pueden modificar directamente los atributos de clase y de instancia
    Un método de clase (static) sólo puede acceder a atributos de clase.

    Alcance de Bloque:
    variables locales y parámetros de un método
    cuando se anidan los bloques y existen dos identificadores con nombres iguales el compilador da error de sintaxis (variable ya definida)
    si una variable local tiene igual nombre que un atributo de la clase éste queda oculto.

    Monografias.com

    27
    Reglas de alcance
    class MiClase{

    public static void metodo1(…){

    {
    …//bloque
    }
    }
    public void metodo2(…){

    }
    }
    variables de clase
    parámetros
    variables locales
    var. de instancia
    parámetros
    variables locales

    Monografias.com

    28
    El método main
    Clase que conduce la aplicación

    Al ejecutar el programa se busca el método main que contiene dicha clase:
    public class Eco {
    public static void main (String[] args){
    for (int i = 0; i< args.length;i++)
    System.out.print(args[i] + “ “);
    }
    }
    String[] args: parámetros del programa

    Ejemplo de invocación:
    java Eco repite esto

    Puede haber más de un main, pero sólo se ejecutará uno

    Monografias.com

    29
    Normas de estilo
    No es que existan reglas pero es conveniente seguir unas normas para que el código sea mas legible:

    nombre de CLASE empieza por Mayúsculas

    nombre de métodos y atributos por minúsculas

    las CONSTANTES con MAYÚSCULAS completamente

    cuando empieza una nueva palabra la ponemos en mayúsculas ej: dibujarRectangulo

    Monografias.com

    30
    Ejemplo: Clase Contador v2 (1/2)
    public class Contador{

    // Variable de clase
    private static int nextCodigo=1;

    // Variables de instancia
    private int codigo;
    private int valor;
    private int valorInicial;
    private int step;

    // Constructores
    public Contador (int valor, int step){
    codigo =nextCodigo;
    this.valor = valor;
    valorInicial = valor;
    this.step = step;
    ++nextCodigo;
    }
    public Contador(){
    this(0,1);
    }

    Monografias.com

    31
    Ejemplo: Clase Contador v2 (2/2)
    // Métodos de instancia
    public void incrementar(){
    valor+=step;
    }
    public void decrementar(){
    if (valor>=step) valor-=step;
    else valor=0;
    }
    public void reset(){
    valor=valorInicial;
    }
    public int getValor(){
    return valor;
    }
    public int getCodigo(){
    return codigo;
    }
    }

    Monografias.com

    32
    Ejemplo. Clase de prueba
    public class TestContador{
    public static void main (String [] args){
    Contador c1 = new Contador();
    Contador c2 = new Contador (0, 10);

    c1.incrementar();
    c2.incrementar();

    System.out.println(“C1 = “ + c1.getValor());
    System.out.println(“C2 = “ + c2.getValor());
    }
    }

    Monografias.com

    33
    Paquetes
    Agrupar todas las clases relacionadas
    //MiClass.java
    package miBiblioteca;
    public class MiClase{ //…

    Se coloca al comienzo del fichero

    Indica que las clases públicas que contenga está accesible a cualquiera que incluya:
    import miBiblioteca.MiClase; o bien
    import miBiblioteca.*;

    Las clases que no tienen un nombre de paquete están en el paquete por defecto (Default Package)

    Soporta el concepto de jerarquía de paquetes (estilo directorio)
    ej: import miPaquete.miSubPaquete.MiClase;

    Monografias.com

    34
    Control de acceso
    Designar qué clases de una biblioteca (miBiblio) están disponibles desde fuera del paquete

    Controlan si el cliente puede crear objetos de la clase
    public class MiClase { … }
    Entonces import miBilio.MiClase;

    Modificador de acceso por omisión indica visibilidad a nivel de paquete.
    Tanto la clase como atributos y métodos.

    Una clase NUNCA puede ser private.

    Monografias.com

    35
    Estructura de un proyecto
    (Gp:) modelo

    (Gp:) Contador
    valor

    sumar()
    restar()

    (Gp:) vista

    (Gp:) VentanaContador

    (Gp:) Contiene nom_proyecto.jpx
    (Gp:) Ficheros .class
    (Gp:) Ficheros .java

    Una carpeta por cada paquete
    Cada carpeta contiene los ficheros corres-
    pondientes a las clases del paquete.
    Coincidencia EXACTA de nombres.

    Monografias.com

    36
    Paquetes básicos del sistema
    java.lang: para funciones del lenguaje
    java.util: para utilidades adicionales
    java.io: para manejo de ficheros
    java.awt: para diseño gráfico e interfaz de usuario
    java.awt.event: para gestionar eventos
    javax.swing: nuevo diseño de GUI
    java.net: para comunicaciones

    Monografias.com

    37
    Comentarios
    Hay tres tipos de comentarios:

    // comentarios para una sola línea

    /*
    comentarios de una o más líneas
    */

    /** comentario de documentación, de una o más líneas justo antes del elemento (clase, var, met)
    */

    Los comentarios de documentación pueden llevar etiquetas

    La documentación se genera con javadoc en formato html

    Monografias.com

    38
    … Comentarios
    Las etiquetas pueden ser:
    @see

    – Etiquetas de documentación de clases:
    @version
    @author

    – Etiquetas de documentación de métodos:
    @param
    @return
    @exception

    Otras: (no aparece en la documentación)
    @todo

    Monografias.com

    39
    Comentarios de
    documentación

    Monografias.com

    40
    C:seminarioJava>javadoc -sourcepath src/ modelo -d doc/
    Loading source files for package modelo…
    Constructing Javadoc information…
    Building tree for all the packages and classes…
    Building index for all the packages and classes…
    Generating doc/overview-tree.html…
    Generating doc/index-all.html…
    Generating doc/deprecated-list.html…
    Building index for all classes…
    Generating doc/allclasses-frame.html…
    Generating doc/index.html…
    Generating doc/packages.html…
    Generating doc/modelopackage-summary.html…
    Generating doc/modelopackage-tree.html…
    Generating doc/modelopackage-frame.html…
    Generating doc/modeloContador.html…
    Generating doc/modeloPrueba.html…
    Generating doc/serialized-form.html…
    Generating doc/package-list…
    Generating doc/help-doc.html…
    Generating doc/stylesheet.css…

    Monografias.com

    41

    Monografias.com

    42
    @param
    @see

    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