Avances tecnológicos del siglo XXI y ejemplos de estos
Tipos Primitivos y Elementos Léxicos de Java
1. Tipos primitivos y elementos léxicos del lenguaje Java Ing. Rolando Steep Quezada Martínez [email_address] Programación Básica en Java y Programación Orientada a Objetos
2.
3.
4.
5.
6. Palabras reservadas de Java threadsafe package goto continue this null for const synchronized new finally class swtich native final char while super long false catch void static interface extends case try short int enum strinctfp true return instanceof Else byte trasient public import double break throws protected implements do boolean throw private if default abstract var rest outer operator byvalue inner generic future cast
7.
8.
9. Operadores en Java + - * / % ++ -- - ~ i,f i,f i,f i,f i,f i,f i,f i i & | ^ << >> >>> i i i i i i == != < <= > >= i,f i,f i,f i,f i,f i,f & | ^ && | ! == != ?: b b b b b b b b b = += -= *= /= %= &= |= ^= Aritméticos y de conversión De comparación Lógicos De asignación Tipos válidos de los operandos i = Entero (byte, small, int, long) f = Punto Flotante (float, double) b = Lógico (boolean)
10.
11.
12.
13.
14.
15.
Notes de l'éditeur
Objetivos Identificar los tipos primitivos del lenguaje Java y el rango de los valores permitidos Conocer los elementos léxicos del lenguaje de programación Java Explicar la forma de declaración e inicialización de variables en Java Explicar el uso de comentarios
Tipos primitivos en Java Java tiene 8 tipos primitivos de datos, de los cuales 6 son de tipo numérico (4 de enteros y 2 de punto flotante), 1 es de tipo carácter y 1 de tipo lógico o booleano. El tipo carácter representa caracteres Unicode de 16 bits y se le puede considerar como un entero sin signo para la mayoría de propósitos. Todos los tipos enteros son tratados como signados, con un tamaño que está entre los 8 y 64 bits. Los tipos de punto flotante se representan en el formato estándar IEEE 754 de un tamaño de 32 y 64 bits. Enteros -2 63 a 2 63 -1 64 bits Entero con signo long -2 31 a 2 31 -1 32 bits Entero con signo int -32768 a 32767 16 bits Entero con signo short -128 a 127 8 bits Entero con signo byte Rango de Valores Tamaño Contenido Tipo
Punto Flotante Carácter Booleano ±1.8x10 308 a ±4.9x10 -324 64 bits IEEE estándar de precisión doble double ±3.4x10 38 a ±1.4x10 -45 32 bits IEEE estándar de precisión simple float Máximos y mínimos aproximados Tamaño Contenido Tipo u0000 a uFFFF 16 bits Carácter Unicode sin signo char Rango de Valores Tamaño Contenido Tipo true o false 8 bits Tipo booleano boolean Valores posibles Tamaño Contenido Tipo
Elementos léxicos de Java Token Componente léxico de un lenguaje de programación. Palabras reservadas Palabras que tiene un significado concreto en el lenguaje de programación, sin necesidad de que se lo asigne el programador. Identificadores Palabras que podemos utilizar para denominar algo en el lenguaje. Literal Especificación de un valor concreto de un tipo de dato.
Operadores Igual que en Matemáticas, realizan una acción específica: Suelen estar definidos en el núcleo del compilador Suelen representarse con tokens formados por símbolos Suelen utilizar notación infija Pueden aplicarse a uno o varios operadores (argumentos) Suelen devolver un valor Delimitadores Símbolos utilizados como separadores de las distintas construcciones de un lenguaje de programación (esto es, los signos de puntuación del lenguaje de programación). Comentarios Aclaración que el programador incluye en el texto del programa para mejorar su inteligibilidad.
Palabras reservadas de Java Para definición de clases, interfaces y enumerados: abstract, class, enum , extends, final, implements, import, interface, package, private, protected, public, static Para declaración de variables y constantes: abstract, boolean, byte, char, double, false, final, int, long, null, private, protected, public, short, static, trasient, true Para definición de métodos: abstract, boolean, byte, char, double, final, int, long, native, private, protected, public, short, static, synchronized, strictfp, throws, void Para construcción de sentencias simples, condicional e iterativas: boolean, break, byte, case, catch, char, continue, default, do, double, else, final, finally, for, goto, if, instanceof, int, long, new, short, static, super, switch, synchronized, this, threadsafe, throw, try, while
Identificadores en Java El primer símbolo del identificador será un carácter alfabético (a, …, z, A, …, Z, ‘_’, ‘$’) pero no un dígito. Después de ese primer carácter, podremos poner caracteres alfanuméricos (a, …, z) y (0, 1, …, 9), signos de dólar ‘$’ o guiones de subrayado ‘_’. Los identificadores no pueden coincidir con las palabras reservadas. Las mayúsculas y las minúsculas se consideran diferentes. El signo de dólar y el guión de subrayado se interpretan como una letra más. Ejemplos válidos a, pepe, r456, tu_re_da, AnTeNa, antena, usd$, _miVar Ejemplos no válidos 345abc, mi variable, Nombre.Largo Variables Java es un lenguaje fuertemente tipado lo que significa que cada variable debe tener un tipo declarado. Para declarar una variables se coloca en primer lugar el tipo, seguido del nombre que la identificará, Ejemplos: int valorEntero ; float valorDecimal ; char ch1,ch2 ;
Literales en Java Números enteros 21 (int), 21L (long), 077 (en octal), 0xDC00 (en hexadecimal) Números reales 3.14 (double), 3.14f (float), 3.14d (double), 2e12, 3.1E12 Valores booleanos true (verdadero), false (falso) Caracteres ‘ p’, ‘u????’ (código UNICODE en hexadecimal), ‘?’ carácter de escape Caracteres de escape : Cadenas de caracteres “ mensaje”, “” (cadena vacía) Tabulador (tab) uddd Caracter Octal f Alimentación de página (FF) udddd Caracter Unicode
Retorno del carro (CR) &quot; Comilla doble Retroceso (backspace) ' Comilla simple Continuación
Nueva línea \ Barra invertida (backslash)
Aritméticos y de conversión Desplazamiento de bits a la derecha (sin considerar signo) >>> Desplazamiento de bits a la derecha >> Desplazamiento de bits a la izquierda << O exclusivo binario (XOR al bit) ^ O inclusivo binario (OR al bit) | Y binario (AND al bit) & Complemento al bit ~ Cambio de signo - Decremento en 1 -- Incremento en 1 ++ Módulo % Adición, sustracción, multiplicación y divisón. + - * / Operación Operador
De Comparación Lógicos De Conversión Mayor o igual que >= Mayor que > Menor o igual que <= Menor que < Diferente != Igual == Operación Operador Condicional ternario (sintaxis: ExpBooleana ? ExpSiTrue : ExpSiFalse) ?: Diferente != Igual == Negación lógica ! O lógico inclusivo (OR) de evaluación “suficiente” || Y lógico (AND) de evaluación “suficiente” && O lógico exclusivo (XOR) ^ O lógico inclusivo (OR) de evaluación completa | Y lógico (AND) de evaluación completa & Operación Operador O lógico exclusivo (XOR) y asigna ^= O lógico inclusivo (OR) y asigna |= Y lógico (AND) y asigna &= Módulo y asigna %= Divide y asigna /= Multiplica y asigna *= Resta y asigna -= Suma y asigna += Asignación = Operación Operador
Delimitadores ( ) PARÉNTESIS: Listas de parámetros en la definición y llamada a métodos, precedencia en expresiones, expresiones para control de flujo y conversiones de tipo. { } LLAVES: Inicialización de arrays, bloques de código, clases, métodos y ámbitos locales. [ ] CORCHETES: Arrays. ; PUNTO Y COMA: Separador de sentencias. , COMA: Identificadores consecutivos en una declaración de variables y sentencias encadenadas dentro de una sentencia for. . PUNTO: Separador de nombres de paquetes, subpaquetes y clases; separador entre variables y métodos/miembros.
Comentarios Ejemplo de comentario de una sola línea: // Comentario de una sola línea Ejemplo de comentario de una o más líneas /* Comentario de una * o más líneas */ Ejemplo de comentario de documentación /** Comentario de documentación, * una o más líneas */ La herramienta javadoc genera automáticamente en HTML la documentación del código a partir de los comentarios /** … */
Declaración/Inicialización de variables Para usar una variable en un programa hay que declararla. El ordenador conoce así cómo codificar la información que se va a almacenar en la posición de memoria correspondiente. Al declarar una variable, se reserva el espacio de memoria necesario para almacenar un valor del tipo de la variable. El identificador asociado a la variable se puede utilizar para acceder al dato almacenado en memoria y para modificarlo. Las variables se han de declarar antes de poder usarlas. Los identificadores de las variables son los nombres que utilizaremos para referirnos a ellas. Al declarar una variable, hay que definir su tipo: la variable sólo admitirá valores del tipo especificado. En una misma declaración se pueden declarar varias variables, siempre que sean del mismo tipo. En este caso, los identificadores de las variables se separan por comas.
Convenciones Los identificadores deben ser descriptivos: deben hacer referencia al significado de aquello a lo que se refieren. int n1, n2 ; // MAL int anchura, altura ; // BIEN Los identificadores asociados a las variables se suelen poner en minúsculas. int CoNTaDoR ; // MAL int contador ; // BIEN Cuando el identificador está formado por varias palabras, la primera palabra va en minúsculas y el resto de palabras se inician con una letra mayúscula. int mayorvalor ; // MAL int mayor_valor ; // ACEPTABLE int mayorValor ; // MEJOR Los identificadores asociados a las constantes se suelen poner en mayúsculas. final double PI = 3.141592 ; Si el identificador está formado por varias palabras, las distintas palabras se separan con un guión de subrayado final char RETORNO_DE_CARRO = ‘
’ ; final double ELECTRONIC_CHARGE = 1.6E-19 ; Inicialización de las variables En una declaración, las variables se pueden inicializar: int i = 0; float pi = 3.1415927f; double x = 1.0, y = 1.0; NOTA: La inicialización puede consistir en una expresión compleja que se evalúa cuando se ejecuta el programa.