Elementos basicos del lenguaje Java
Comentarios
è
De línea: // comentario de línea
è
De varias líneas: /* comentario de varias líneas */
è
De documentación para la utilidad JavaDoc: /**
Comentario de documentación de varias líneas
Variables
è
Deben comenzar con una letra o ‘$’ o ‘_’
è
Y le siguen más letras, dígitos, ‘$’ o ‘_’
è
Son sensibles a mayúsculas y minúsculas
Tipo de datos
è
Primitivos: Son los tipos de datos simples de otros
lenguajes (int, float, double, char, boolean…)
è
Referencias: Es un tipo de dato Nuevo capaz de
apuntar o referirse a un objeto de una clase
Datos primitivos
è
Números enteros
o byte(1
byte)
o short (2
bytes)
o int (4
bytes)
o long (8
bytes)
è
Números reales
o float (4
bytes)
o double (8
bytes)
è
Lógico
o boolean
(1 byte)
è
Carácteres
o char (2
byes en UNICODE)
Declaración y y literales válidos de tipo primitivo
è
byte edad = 54;
è
int numArticulo = 2900;
è
long distancia = 100000000000
è
double
longitud = 31.5454
è
float
media = 7.87f; // Atención a la f
è
boolean
encontrado = TRUE; // O bien = false
è
char
letraDNI = ‘F’;
è
char
egne = ‘\u00F1’; // caracter de escape de
la ñ
è
char
nuevaLinea = ‘\n’; // Caracter de nueva
línea
Referencias a objetos
Declaración
nombreClase
nombreReferencia
è
String cadena = null; //
Capaz de apuntar a objetos string
è
Persona perso = null; //
Capaz de apuntar a objetos Persona
è
Factura f = null; // Capaz
de apuntar a objetos Factura
En los ejemplos solo hemos declarado las referencias pero no se ha creado el objeto. Para
ello usaremos el operador new que veremos más adelante.
Una referencia a un objeto de clase X siempre debe apntar a un objeto
de dicha clase o ser NULL.
Operadores indispensables
Igual que en C:
è
Asignación: =
è
Aritméticos: +, -, ++, --, *, /, %
è
Relacionales: <, <=, >, >=, ==, !=
è
Lógicos: !, &&, ||
El operador de creación de objetos new:
è
Sirve para crear un objeto de una clase en la
memoria y devolver una referencia al mismo
è
Forma de uso:
o
new
NombreClase (parámetros para crear el objeto)
o
new
String(“Hola”);
o
new
Persona(“Pedro”, “Marquez Lopez”);
El operador new se suele combinar con la asignación de la siguiente
forma:
è
string
msg1;
è
msg1 =
new String (“Mensaje 1”);
No existe un operador para destruir un objeto que ya no hace falta. En
Java existe un recolector de basura que libera las zonas de memoria de objetos
no referenciados.
El recolector de basura es un proceso que lanza la máquina virtual Java
automáticamente y que no controlamos.
Por ejemplo, si ejecutamos:
String msg1 = new String (“Mensaje
1”);
String msg2 = new String (“Mensaje
2”);
msg1 = msg2; // La referencia
msg1 ahora apunta al mismo objeto que msg2.
El objeto sin referenciar sería string “Mensaje 1”.
El operador de comparación == si lo usamos con referencias a objetos
compara las referencias, no el contenido del objeto.
Ejemplo 1:
String cad1 = new String(“Hola”);
String cad2 = new String(“Hola”);
if (cad1 == cad2) // Da falso
Ejemplo 2:
String cad1 = new String(“Hola”);
String cad2 = cad1
if (cad1 == cad2) // Da
verdadero
El operador + como concatenador de cadenas:
Crea un nuevo objeto String que es la concatenación de las expresiones
que enlaza. Por ejemplo:
String nom = new String(“Pedro”);
String ap1 = new String(“Lopez”);
String ap2 = new String(“Martos”);
String nomCompleto = new String(nom+”
“+ap1+” “+ap2);
// Este último es equivalente
a:
// String nomCompleto = new
String (nom+” ”+ap1+” “+ap2);
System.out.println(nomCompleto);
System.out.println(“Apellidos: ”+ap1+”
“+ap2);
Instrucciones de salida por pantalla
Usaremos
System.out.println(expresión de
tipo cadena);
System.out.print(expresión de
tipo cadena);
La primera escribe un retorno de carro al terminar y la segunda no.
Ejemplos:
System.out.println(“Nombre = ”+nom+”
Edad = “+25); // siendo nom una referencia a un objeto string
System.out.print(“Nota media = ”+suma/numAlum);
// Siendo suma una variable double y numAlum una entera
System.out.println(“Modo
arrancado = ”+motorArrancado); // Siendo motorArrancado una variable de tipo
boolean. Imprimirá TRUE o FALSE según sea el valor que contiene
También existe el printf tal y como se usa en C:
System.out.printf(“Nombre = %s
Edad = %d”,nom,edad);
Las instrucciones de entrada de teclado las veremos más adelante.
Instrucciones de control de flujo del programa
Selectivas (exactamente igual que en C):
è
Simple: if(condición
lógica)…
è
Doble: if(condición
lógica) … else …
è
Múltiple: switch(expresión
entera) … case 1: … break; … default: …
Iterativas (igual que en C):
è
Como condición inicial: while(condición lógica) …
è
Como condición final: do … while (condición lógica);
è
Controlada por contador: for(inicialización; condición de permanencia; incremento) …
Bloque s de código (igual que en C++):
è
Un bloque de código está delimitado por { }
è
Las variables declaradas en un bloque sólo
tienen validez y existencia dentro del mismo. Ejemplo
if (a>b){
int
aux = a;
a =
b;
b =
aux;
}
// aux sólo tiene validez y existencia dentro
de este bloque. Fuera del mismo no existe
0 comentarios:
Publicar un comentario