Вы находитесь на странице: 1из 51

Java

Lenguaje de
Programación Java
Unidad 2

Autor
Isabel Ponce
1
Objetivos Específicos Java

 Distinguir los diferentes elementos del lenguaje


Java
 Distinguir entre los diferentes tipos de variables
 Reconocer, describir y usar operadores
 Distinguir entre las acciones legales e ilegales de
tipos primitivos
 Describir y aplicar las convenciones para escribir
programas en Java

2
Elementos del lenguaje Java

Comentarios
 Los  tres  tipos  de  comentarios  permitidos  en  Java 
son:
 <comentario_de_una_línea> ::= 
// <comentario>
<comentario_de_una_o_varias_líneas> ::=
/* <línea_de_comentario>
  [<línea_de_comentario>*] */
<comentario_de_documentación> ::= 
/** <comentario_de_documentación> */ 
3
Elementos del lenguaje Java

Palabras Reservadas
abstract    default  if private throw
boolean    do  implements protected throws
break     double  import public null
this      byte else instanceof return
true     case extends int short
try     catch false interface static
void     char final long super
volatile     class finally native switch
while     const float new syncronized
goto continue for package transient
4
Elementos del lenguaje Java

Conjunto de Caracteres
Se usa el conjunto de caracteres UNICODE, en español: 
 Letras  de  la  ‘a’  a  la  ‘z’  mayúsculas  y  minúsculas,  letras 
acentuadas, ñ, _, $
 Dígitos: del 0 al 9
 Espacios en blanco, incluyendo tabulador, avance de página, 
nueva línea, retorno de carro (CR LF). Los espacios en blanco 
en exceso se ignoran por el compilador.
 Caracteres especiales:
, . ; : ¿ ‘ “ ( ) [ ] { } < ! ~ | / \ + % & ^ * - = >
Se pueden representar por secuencias de escape: carácter 
\ y letra ( \{ ) o combinación de dígitos.  5
Elementos del lenguaje Java

Literales

entero 8
flotante 3.2
lógico true
carácter ‘a’
cadena de caracteres  “Hola Mundo”
nulo  null 

6
Elementos del lenguaje Java

Identificadores
La sintaxis general para identificadores:
 <identificador> ::= letra | _ | $ [letra | dígito | _ | $]*
 Las letras pueden ser mayúsculas o minúsculas.
 Los  identificadores  son  sensibles  a  mayúsculas  y  no 
tienen longitud máxima.
 Los  nombres  de  clases  deben  tener  sólo  caracteres 
ASCII porque no todos los sistemas soportan caracteres 
Unicode.
 Un identificador no puede ser una de palabra reservada. 
7
Elementos del lenguaje Java

Constantes

Constante de clase:
<declaración_de_clase> {
.
.

<declaración_de_constante_de_clase>  ::=  final [static] 


<tipo> <identificador> = <literal>;
.
.

final static int MESES = 12;


8
Elementos del lenguaje Java

Constantes

Constante de método:
<declaración_de_método> {
.
.

<declaración_de_constante_local>  ::=  final <tipo> 


<identificador> = <literal>;
.
.

final int DIAS = 31;


9
Elementos del lenguaje Java

Variables Locales

Las variables locales son variables que:
 Se  declaran  dentro  de  un  método  o  bloque  y  son 
llamadas locales, automáticas, temporales ó de pila.
 Se crean cuando el bloque es ejecutado y son destruidas 
al salir de él.
 Deben ser inicializadas antes de ser usadas o provocan 
un error de compilación.

10
Elementos del lenguaje Java

Variables Locales

Sintaxis:
<declaración_de_variable>  ::=  <tipo>  <identificador>  [= 
<literal> | <expresión>] [, <identificador>]*; 
Ejemplo:
String Nombre = “Pedro Picapiedra”;
int numero = 0, contador;

11
Elementos del lenguaje Java

Tipos de datos Primitivos

Lógico boolean
Texto char
Entero byte, short, int y long
Flotante double y float

Aunque void no  es  un  tipo  de  datos,  se  emplea  para 
indicar que un método no retorna nada. 
12
Elementos del lenguaje Java

Tipo Lógico - boolean

 El tipo de dato boolean tiene dos valores literales, true y 


false.
 Ocupan sólo un bit de memoria
 Ejemplo:
boolean verdad = true;
declara la variable verdad de tipo boolean y le asigna true. 

13
Elementos del lenguaje Java

Tipo Texto - char y String

 char representa un carácter Unicode (16 bits sin signo). 
 Una literal se encierra entre apóstrofes (‘ ‘)
‘a’  letra a
‘\t’ un tabulador
 ‘\u????’ carácter  Unicode,  ????  se  remplaza  con 
dígitos hexadecimales
 (por ejemplo: ‘\u03A6’ es la letra PI Φ)

14
Elementos del lenguaje Java

Tipo Texto - char y String


 El tipo String no es primitivo sino una clase, se usa para 
representar  secuencias  de  caracteres  incluyendo 
caracteres Unicode.
 Las cadenas se encierran entre comillas (“ “)
 Ejemplos:
char ch = ‘A’;
char ch1, ch2;
String saludo = “¡Buenos días ! \n”;
String mensajeError = “Registro no encontrado”; 
15
Elementos del lenguaje Java

Tipo Entero - byte, short, int y long


 Se pueden declarar enteros usando tres formas: decimal, 
octal o hexadecimal:
2 Valor en decimal dos
07 El cero a la izquierda indica valor en octal
0xBAAC El  0x  a  la  izquierda  indica  valor  en 
hexadecimal
 Todos los enteros son con signo
 Todos los enteros son int a menos que se agregue una L 
o l al final:
 2L representación de 2 en decimal como entero largo 
16
Elementos del lenguaje Java
Tipo Entero - byte, short, int y long
 Los rangos para valores enteros son:
Longitud Tipo Rango
  8 bits byte -  27 a 27 - 1
16 bits short -215 a 2 15 - 1
32 bits int -231 a 2 31 - 1
64 bits long -263 a 2 63 – 1
 Ejemplos:
30 entero
-30 entero negativo
30l long 
-30L long negativo 17
Elementos del lenguaje Java

Tipo Flotante - float y double

 Los valores de punto flotante son double por omisión
 Los  valores  de  punto  flotante  incluyen  punto  decimal  o 
una de las siguientes letras:
E o e (agregan valor exponencial)
F o f (float)
D o d (double )

18
Elementos del lenguaje Java
Tipo Flotante - float y double
 Ejemplo:
3.14 double 
6.02E23 double 
2.718F float
4.350E3f float                               
123.4E+306D double con D redundante 

 Los rangos para valores de punto flotante son:
Longitud Tipo Rango
       32  bits      float ±1.40239846E-45  a 
±3.4028234663852886E+38
    64 bits   double     ±4.94065645841246544E-324 a  
±1.79769313486231570E+308
19
Elementos del lenguaje Java
Conversiones entre Tipos de Datos

Conversión Explícita (Casting)


<conversión_explícita> ::= ( <tipo> ) <expresión> 
Hace conversiones si son permitidas.
Conversiones entre numéricos permitida.
Conversiones entre lógicos y numéricos es error.
Su  uso  garantiza  evaluación  consistente,  pero  debe 
evitarse.
Ejemplo: int x = 6;
float y = 2.5;
x = (int) y;
20
Elementos del lenguaje Java
Conversiones entre Tipos de Datos

Conversión Implícita (Promoción)

Tipo Promociones válidas


double Ninguna
float double
long float o double 
int long, float o double
char int, long, float o double
short int, long, float o double
byte short, int, long, float o double
boolean Ninguna
21
Elementos del lenguaje Java

Tipos de Datos No primitivos (Clases Wrapper


-Envoltorio)

 Implementan objetos inmutables 
Ejemplo:
 
int pInt = 500;
Integer wInt = new Integer(pInt);
int p2 = wInt.intValue(); 

 Tienen muchos métodos de conversión:
int x = Integer.parseInt(cadena);
22
Elementos del lenguaje Java

Tipos de Datos No primitivos (Clases Wrapper)

Tipo de Dato Primitivo Clase Envoltorio


boolean Boolean
byte Byte
char Character
short Short
int Integer
long Long
float Float
double Double
23
Elementos del lenguaje Java

Operadores
Java tiene una rica variedad de operadores que permiten 
manipular  valores  de  los  tipos  primitivos  de  datos.  Los 
operadores se pueden agrupar en:
Lógicos
Unarios
Aritméticos
Relacionales
De asignación
A nivel de bits
24
Elementos del lenguaje Java

Operadores Lógicos

Operador Operación
! NOT (negación)
& AND (Y)
| OR (O)
^ XOR (O exclusivo)

25
Elementos del lenguaje Java

Operadores Lógicos (de corto circuito)

Operador Operación
&& AND (Y)
|| OR (O)

Ejemplo:
MiFecha d;
if ((d != null) && (d.dia > 31)) {
//hacer algo con d
}   26
Elementos del lenguaje Java

Operadores Unarios

Operador Operación
~ Complemento  a  1  (cambiar  ceros  por 
unos y unos por ceros).
El  operando  debe  ser  un  entero 
positivo
- Cambia  de  signo  al  operando  (calcula 
el complemento a 2 –complemento 1 + 
1).
El operando debe ser entero o flotante
27
Elementos del lenguaje Java

Operadores Unarios

Operador Operación
! Operador lógico de negación
++ Autoincremento  en  uno  (posfijo  o 
prefijo)
-- Autodecremento  en  uno  (posfijo  o 
prefijo)

28
Elementos del lenguaje Java

Operadores Aritméticos

 Estos operadores retornan un resultado del mismo 
tipo que el operando de mayor precisión.
  El  operando  de  división  entre  enteros  siempre  da 
resultado entero, truncando el residuo.
 Se aplican a todos los tipos numéricos

29
Elementos del lenguaje Java

Operadores Aritméticos

Operador Operación
+ Suma
- Resta
* Multiplicación
/ División
% Módulo (residuo de la división)

30
Elementos del lenguaje Java

Operadores Relacionales

Operador Operación
      == Compara igualdad
      != Compara desigualdad
      > Mayor que
      < Menor que
      >= Mayor o igual que
      <= Menor o igual que
31
Elementos del lenguaje Java

Operadores De Asignación

Operador Operación
     = Asignación simple
     += Suma más asignación
     -= Resta más asignación
     *=   Multiplicación más asignación
     /= División más asignación
     %= Módulo más asignación
32
Elementos del lenguaje Java

Operadores De Asignación

Operador Operación
^= XOR sobre bits más asignación
|= OR sobre bits más asignación
&= AND sobre bits más asignación
<<= Desplaza bits izquierda + asignación
>>= Desplaza bits derecha más asignación
>>>= Desplaza bits derecha más asignación 
rellenando con ceros
33
Elementos del lenguaje Java
Operadores A Nivel de Bits

Operador Operación
& AND a nivel bits
^ OR exclusivo sobre bits
| OR sobre bits
~ Complemento a 1
<< Desplazamiento de bits a la izquierda 
>> Desplazamiento de bits a la derecha 
>>> Desplazamiento  de  bits  a  la  derecha 
rellenando con ceros
34
Elementos del lenguaje Java

Operador de Concatenación (+)


Realiza concatenación de cadenas
Produce una cadena nueva:
String saludo = “Dr.”;
String nombre = “Juan” + “ “ + “Pérez”;
String título = saludo + “ “ + nombre;
Al menos uno de sus argumentos debe ser un objeto 
String
Todo  lo  que  no  sea  cadena  se  convierte 
automáticamente a cadena 
35
Elementos del lenguaje Java

Operadores de Agrupación o Separación


Operador Operación
( ) –  paréntesis Contener  listas  de  parámetros;  definir 
precedencia  de  operadores  en 
expresiones,  contener  expresiones  de 
control  de  flujo  y  rodear  las 
conversiones de tipo (Casting).
{ } –  llaves Contener  valores  de  arreglos 
inicializados  automáticamente  y  definir 
bloques de código.
[ ] – corchetes Declarar arreglos y hacer referencia a 
sus valores. 36
Elementos del lenguaje Java

Operadores de Agrupación o Separación

Operador Operación
 ;  -  punto  y  coma Separa  sentencias  y  expresiones  del 
ciclo for.
 ,  -  coma Separa  identificadores  consecutivos 
en  declaraciones  y  encadena 
sentencias en la inicialización del for.
 .  –  punto Separar  nombres  de  paquete  de 
subpaquetes  y  clases;  y  hacer 
referencia  a  un  atributo  o  método  de 
un objeto o clase.
37
Elementos del lenguaje Java

Otros Operadores
Operador Operación
? : (Condicional)  Operador  ternario.  Crea  operación 
condicional  que  puede  sustituir  al  if. 
Primer  operando  =  expresión 
Booleana,  Segundo  =  valor  si 
expresión  verdadera,  y  tercero  =  valor 
si falsa. Ejemplo: m = (a > b ? x : y);
instanceof (Comparación  de  tipos)  Indica  si  un  objeto  es 
de  una  clase,  subclase  o  interfaz  e 
indica  si  un  objeto  es  nulo  (null). 
Ejemplo: if (perro instanceof Animal)
38
Elementos del lenguaje Java

Precedencia de Operadores
.    ,    []      () 
    ++      --     !       ~      -    +  (conversión_de_tipo)
     *       /       %
    +       -
    <<      >>      >>> 
    <       >       <=       >=    instanceof
   ==       !=
    &  
    ^  
     |
    &&  
    ||
    ?  :       
    =       op=     (*=     /=      %=      +=      -=      etc.) 
39
Elementos del lenguaje Java

Expresiones

La mayoría son expresiones binarias
Error Correcta
if (a || b == 10)  if (a == 10 || b == 10) 
if (a == 3 || 4)  if (a == 3 || a == 4)
if (12 < y < 24)  if (12 < y && y < 24)

40
Elementos del lenguaje Java

Punto y coma, bloques y espacios


   Punto y coma:
Totales = a + b + c
    + d + e + f ;
Bloque: {
x = y + 1;
y = x + 1;
}
Cualquier cantidad de espacios en blanco 
41
Convenciones de Codificación en
Java Java

  El  estilo  es  benéfico  para  la  lectura  de  programas, 

principalmente la consistencia.

 Paquetes - nombres = sustantivos en minúsculas.

 Clases - nombres = ser sustantivos, con mayúsculas 

y  minúsculas  mezcladas;  primera  letra  de  cada  palabra 


capitalizada.

 Interfaces - nombres = capitalizados como las clases.

42
Convenciones de Codificación en
Java Java

  Métodos  -  nombres  =  verbos,  capitalizados,  primera 


letra en minúsculas. Limitar el uso del guión bajo. 

Variables  -  nombres  =  capitalizados,  con  la  primera 


letra minúsculas e indicar intención de uso. Limitar el 
uso de guión bajo (_) y el signo de pesos ($) . 

 Constantes - nombres = en mayúsculas con palabras 
separadas  por  guión bajo.  Las  constantes  de  objeto 
pueden usar mezcla de letras.

  Expresiones,  incluir  un  espacio  a  cada  lado  de  cada 


operador.  43
Convenciones de Codificación en
Java Java

 Cuando una línea es tan larga que debe separarse, es 

elegir un punto de ruptura que sea lógico y razonable.

  Estructuras  de  control  -  usar  llaves  ({  })  alrededor  de 

las instrucciones, aún cuando sea una sola.

  Espacios  -  colocar  solo  una instrucción por línea y 

usar  de  dos  a  cuatro  espacios  de  sangría  izquierda  en 

cada anidamiento, para hacer el código más legible 
44
Convenciones de Codificación en
Java Java

 Comentarios  -  usar  comentarios  para  explicar 


segmentos de código que no son obvios.

  Los  métodos  de  acceso  para  establecer  valores  a  los 

atributos se llaman setters y deben empezar con set.

 Los métodos de acceso para obtener los valores de los 

atributos  se  denominan  getters  y  deben  empezar  con 

get. 
45
javadoc Java

   Java  soporta  comentarios  de  documentación  que  se 


transforman en html con javadoc.

 El formato de este documento es jerárquico, de modo que 
la página inicial lista todos los paquetes como hiperligas.

 Estos  comentarios  deben  anteceder  inmediatamente  a  la 


declaración  de  la  clase,  atributo  o  método  a  que  están 
asociados.

 Después de la oración de resumen inicial, los comentarios 
pueden usar etiquetas especiales, todas con el carácter @ 
al inicio que formatean la documentación. 
46
javadoc Java

   La  etiqueta,  debe  ir  al  principio,  el  resto  del  texto  puede 
abarcar  más  de  una  línea,  hasta  la  siguiente  etiqueta  o 
hasta el final del comentario. 

 Si  se  usa  más  de  una  etiqueta  del  mismo  tipo,  se  deben 
colocar consecutivamente. 

 Sintaxis:

C:\>javadoc <nombre_de_paquete | nombre_de_archivo> 

47
javadoc Java

  Algunas etiquetas son:

@see @version

@autor @param

@return @exception

@deprecated @since

48
Ejercicios Java

1. Escribir  un  programa  que  declare  las  constantes  PI  y 


ERROR (archivo no encontrado) y mostrar sus valores

2. Crear  un  programa  que  asigne  un  valor  flotante  a  una 


variable,  lo  muestre,  y  luego  lo  asigne  a  una  variable 
entera y lo muestre.

3. Crear  un  programa  que  almacene  un  entero  en  una 


variable,  lo  asigne  a  un  objeto  wrapper,  el  wrapper  lo 
asigne a otra variable entera y muestre las 3 variables.

4. Desarrollar  un  programa  que  realice  las  cuatro 


operaciones aritméticas a partir de 2 variables enteras.
49
Ejercicios Java

5. Modificar el programa anterior para que use JOptionPane 
y realice las operaciones con valores flotantes.

6. Escribir  un  programa  que  solicite  el  apellido  paterno, 


materno  y  nombre,  el  día,  mes  y  año  de  nacimiento  y 
muestre el nombre completo y los años transcurridos.

7. Usando  el  operador  ternario  modificar  el  programa 


anterior para que muestre si es mayor de edad.

8. Modificar  los  programas  6  y  7  agregando  etiquetas  para 


documentarlos y usar javadoc.
50
Tarea Java

1. Investigar  cuáles  son  las  etiquetas    de  Javadoc  y  para 


qué sirven.

2. Documentar  las  clases  String  y  JOptionPane  mediante 


Javadoc.

51

Вам также может понравиться