SlideShare una empresa de Scribd logo
1 de 61
Actividad 3: Identificadores, palabras 
clave y tipos 
UD – Lenguajes y Herramientas de 
Desarrollo de Software
Introducción 
 El contenido de la siguiente presentación es íntegramente el 
contenido del curso Java Programming Language, Java SE 6 de 
Oracle, con algunos agregados propios de Iberotec. 
 Se utiliza el material oficial de Oracle, por ser Iberotec 
miembro del Oracle Academy.
Actividad 3: Identificadores, palabras 
clave y tipos 
1. Comentarios 
2. Signos de punto y coma, bloques y espacio en 
blanco 
3. Identificadores 
4. Palabras clave en programación Java 
5. Tipos básicos del lenguaje Java 
6. Variables, declaraciones y asignaciones 
7. Tipos de referencia usados en Java 
8. Construcción e Inicialización de Objetos 
9. Asignación de referencias
Comentarios 
 Existen tres formas válidas de introducir comentarios: 
// comentario en una línea 
/* 
comentario en una 
o varias líneas 
*/ 
/** 
el comentario de documentación 
también puede abarcar más de una línea 
*/
Comentarios 
 Los comentarios de documentación situados inmediatamente 
antes de una declaración (de una variable, un método o una 
clase) indican que ese comentario debería incluirse en 
cualquier documentación que se genere de forma automática 
(por ejemplo, los archivos HTML generados por el comando 
javadoc) para que sirvan de explicación del elemento 
declarado. 
 El formato de estos comentarios y el uso de la herramienta 
javadoc™ se describen en la documentación del SDK de Java 
2. Vaya a la siguiente dirección: 
http://docs.oracle.com/javase/1.5.0/docs/guide/javadoc/index.html
Actividad 3: Identificadores, palabras 
clave y tipos 
1. Comentarios 
2. Signos de punto y coma, bloques y espacio en 
blanco 
3. Identificadores 
4. Palabras clave en programación Java 
5. Tipos básicos del lenguaje Java 
6. Variables, declaraciones y asignaciones 
7. Tipos de referencia usados en Java 
8. Construcción e Inicialización de Objetos 
9. Asignación de referencias
Signos de punto y coma, bloques y espacio en 
blanco 
 En el lenguaje Java, una sentencia se compone de una o 
varias líneas de código que se cierran con un signo de punto 
y coma (;). 
//Por ejemplo: 
totals = a + b + c + d + e + f; 
//Equivale a 
totals = a + b + c 
+ d + e + f;
Signos de punto y coma, bloques y espacio en 
blanco 
 Un bloque, a veces denominado sentencia compuesta, es un 
conjunto de sentencias delimitadas por llaves de apertura y 
cierre ({ }). Los bloques proporcionan algunas ventajas que se 
describen en el Módulo, “Expresiones y control del flujo”. Por 
ahora, piense en los bloques como en conjuntos de 
sentencias agrupadas. 
// sentencia en un bloque 
{ 
x = y + 1; 
y = x + 1; 
}
Signos de punto y coma, bloques y espacio en 
blanco 
// definición de una clase contenida en un bloque 
public class MyDate { 
private int day; 
private int month; 
private int year; 
} 
// un bloque de sentencias puede estar anidado en otro bloque 
while ( i < large ) { 
a = a + i; 
// bloque anidado 
if ( a == max ) { 
b = b + a; 
a = 0; 
} 
i = i + 1; 
}
Signos de punto y coma, bloques y espacio en 
blanco 
 Es posible incluir espacios en blanco entre los elementos del 
código. Se admite cualquier cantidad de espacio. 
Normalmente se incluye en forma de tabuladores, espacios y 
saltos de línea para mejorar la calidad y la organización del 
código fuente. 
//Compare 
{int x;x=23*54;} 
//Con: 
{ 
int x; 
x = 23 * 54; 
}
Actividad 3: Identificadores, palabras 
clave y tipos 
1. Comentarios 
2. Signos de punto y coma, bloques y espacio en 
blanco 
3. Identificadores 
4. Palabras clave en programación Java 
5. Tipos básicos del lenguaje Java 
6. Variables, declaraciones y asignaciones 
7. Tipos de referencia usados en Java 
8. Construcción e Inicialización de Objetos 
9. Asignación de referencias
Identificadores 
 En el lenguaje Java, un identificador es un nombre asignado a 
una variable, una clase o un método. Los identificadores 
empiezan por una letra, el signo de subrayado (_) o el 
símbolo del dólar ($). Los caracteres posteriores pueden ser 
dígitos. No tienen longitud máxima y existe diferencia entre 
mayúsculas y minúsculas. 
He aquí algunos identificadores válidos: 
● identificador 
● nombreUsuario 
● nombre_usuario 
● _variable_sistema 
● $transaccion
Identificadores 
 El código fuente de la tecnología Java se escribe con el juego 
de caracteres Unicode de 16 bits en lugar de texto ASCII de 8 
bits, por lo que admite muchas más letras de las que 
componen el abecedario inglés (a-z y A–Z). Aunque los 
identificadores pueden usar caracteres no pertenecientes al 
juego ASCII, tenga presente lo siguiente: 
o Unicode puede admitir caracteres diferentes que tienen el 
mismo aspecto. 
o Los nombres de clases sólo deberían escribirse en caracteres 
ASCII porque la mayoría de los sistemas de archivos no admiten 
caracteres Unicode.
Identificadores 
 Un identificador no puede ser una palabra clave, pero puede 
contener una palabra clave como parte de su nombre. Por 
ejemplo thisOne es un identificador válido, pero this no lo es 
porque this es una palabra clave reservada para el lenguaje 
Java. 
 Los identificadores que contienen el signo de dólar ($) son 
poco frecuentes en general, aunque lenguajes como BASIC y 
los sistemas AX/VMS hacen un amplio uso de ellos. Puesto 
que no son habituales seguramente es mejor evitar su uso, a 
menos que exista alguna convención local o alguna razón de 
peso para incluir este signo en el identificador.
Actividad 3: Identificadores, palabras 
clave y tipos 
1. Comentarios 
2. Signos de punto y coma, bloques y espacio en 
blanco 
3. Identificadores 
4. Palabras clave en programación Java 
5. Tipos básicos del lenguaje Java 
6. Variables, declaraciones y asignaciones 
7. Tipos de referencia usados en Java 
8. Construcción e Inicialización de Objetos 
9. Asignación de referencias
Palabras clave en programación Java 
 Las palabras clave son palabras reservadas que tienen un 
significado especial para el compilador de Java. Sirven para 
identificar el nombre de un determinado tipo de datos o un 
constructor del programa. 
 La siguiente Tabla con tiene una lista de las palabras clave 
utilizadas en el lenguaje Java.
Palabras clave en programación Java
Palabras clave en programación Java 
 Aunque parezca que true y false son palabras clave, en 
realidad son valores literales booleanos, según se explica en 
el documento The Java Language Specification (sección 
3.10.3). Igualmente, null es, de hecho, el literal null (sección 
3.10.7). 
 Sin embargo, los literales true, false y null escritos en 
minúsculas no pueden usarse como identificadores.
Palabras clave en programación Java 
 Es necesario hacer algunas consideraciones importantes 
sobre las palabras clave: 
o Los literales true, false y null se escriben en minúsculas, no en 
mayúsculas como en el lenguaje C++. Técnicamente son 
literales, no palabras clave, pero esta distinción es puramente 
académica. 
o No existe ningún operador sizeof; no puede realizarse el acceso 
directo a la memoria, por lo que la información carecería de 
valor. 
o Las palabras clave goto y const no se utilizan en programación 
Java.
Actividad 3: Identificadores, palabras 
clave y tipos 
1. Comentarios 
2. Signos de punto y coma, bloques y espacio en 
blanco 
3. Identificadores 
4. Palabras clave en programación Java 
5. Tipos básicos del lenguaje Java 
6. Variables, declaraciones y asignaciones 
7. Tipos de referencia usados en Java 
8. Construcción e Inicialización de Objetos 
9. Asignación de referencias
Tipos básicos del Lenguaje Java 
 El lenguaje Java incorpora numerosos tipos de datos. Éstos se 
clasifican en dos grandes categorías: tipos de clase y tipos 
primitivos. Los tipos primitivos son simples valores, no 
objetos. Los tipos de clase se utilizan para tipos más 
complejos, incluidos todos los que declara el propio 
programador. Los tipos de clase se utilizan para crear objetos.
Tipos básicos del Lenguaje Java 
 Tipos primitivos 
o El lenguaje Java define ocho tipos de datos primitivos que se 
enmarcan en cuatro categorías: 
 Lógicos: boolean 
Textuales: char 
Enteros: byte, short, int y long 
Reales en coma flotante: double y float
Tipos básicos del Lenguaje Java 
 Lógicos: boolean 
o Los valores lógicos se representan mediante el tipo boolean, 
que puede contener uno de estos dos valores: true (verdadero) 
o false (falso). Estos dos valores se utilizan para representar uno 
de dos posibles estados, como activado/desactivado o sí/no. El 
tipo boolean admite dos valores literales: true y false. El 
ejemplo de código siguiente contiene la declaración e 
inicialización de una variable de tipo boolean: 
// declara la variable verdad como booleana y 
// le asigna el valor true 
boolean verdad = true;
Tipos básicos del Lenguaje Java 
 Lógicos: boolean 
o No existe conversión de tipos entre enteros y booleanos. 
Algunos lenguajes, principalmente C y C++, permiten 
interpretar los valores numéricos como lógicos. No es el caso 
de Java. En este lenguaje, cuando se necesita un tipo boolean, 
sólo pueden utilizarse valores booleanos.
Tipos básicos del Lenguaje Java 
 Textuales: char 
o Los distintos caracteres se representan mediante el tipo char. 
Un valor char representa un carácter Unicode de 16 bits sin 
signo. Es necesario escribir los literales char entre apóstrofos (' 
'). Por ejemplo: 
‘a’ La letra a 
‘t’ Un tabulador 
‘u????’ Un carácter Unicode concreto, ????, que se sustituye 
exactamente por cuatro dígitos hexadecimales. 
Por ejemplo, ’u03A6’ es la letra griega fi [Φ].
Tipos básicos del Lenguaje Java 
 Textuales: String 
o El tipo String es un tipo de clase, no primitivo, y se utiliza 
para representar cadenas de caracteres. Los caracteres 
utilizados en la secuencia son Unicode y la notación de 
barra invertida () usada para el tipo char se aplica 
también a String. Al revés de lo que ocurre en C y C++, la 
cadenas de caracteres no deben cerrarse con 0. 
o Los literales String se escriben entre comillas (“”). 
"El astuto zorro se lanza sobre el perro.“
Tipos básicos del Lenguaje Java 
 He aquí algunos ejemplos de declaración e inicialización de 
variables del tipo char y String: 
// declara e inicializa una variable char 
char ch = ’A’; 
// declara dos variables char 
char ch1,ch2; 
// declara dos variables String y las inicializa 
String greeting = "Buenos días n"; 
String errorMessage = "No se ha encontrado el registro."; 
// declara dos variables String 
String str1,str2;
Tipos básicos del Lenguaje Java 
 Enteros: byte, short, int y long 
o Hay cuatro tipos de datos enteros en Java. Cada uno de ellos se 
declara utilizando una de las siguientes palabras clave byte, 
short, int o long. 
o Puede representar los literales de los tipos enteros utilizando 
una notación decimal, octal o hexadecimal, como se muestra a 
continuación: 
2 Éste es el formato decimal del entero 2. 
077 El 0 inicial indica un valor octal. 
0xBAAC El prefijo 0x indica que es un valor hexadecimal. 
o Todos los tipos numéricos en Java representan números con 
signo.
Tipos básicos del Lenguaje Java 
 Enteros: byte, short, int y long 
o Los literales enteros son del tipo int, a menos que vayan 
explícitamente seguidos de la letra L, lo que indicaría que se 
trata de un valor long. Da igual escribir la L en mayúscula o 
minúscula. No obstante, no se recomienda la l minúscula 
porque resulta difícil diferenciarla del número 1. He aquí las 
versiones largas (long) de los literales citados anteriormente. 
//La L indica que el valor decimal 2 se representa como un entero largo. 
2L 
//El 0 inicial indica un valor octal. 
077L 
// El prefijo 0x indica que es un valor hexadecimal. 
0xBAACL
Tipos básicos del Lenguaje Java 
 Enteros: byte, short, int y long 
o En la siguiente Tabla figuran el tamaño y el intervalo de valores 
correspondientes a los cuatro tipos de enteros. La 
representación del intervalo de valores se define en la 
especificación del lenguaje Java como un complemento a 2 y es 
independiente de la plataforma.
Tipos básicos del Lenguaje Java 
 Reales en coma flotante: double y float 
o Las variables de tipos reales en coma flotante se declaran con 
las palabras clave float o double. La lista siguiente contiene 
ejemplos de números en coma flotante. Un literal numérico es 
un número real en coma flotante si incluye un separador 
decimal y un exponente (la letra E o e), o bien si va seguido de 
la letra F o f (float) o de la letra D o d (double). 
3.14 Valor en coma flotante sencillo (double) en notación estándar 
6.02E23 Valor en coma flotante largo 
2.718F Valor corto de precisión simple (float) 
123.4E+306D Valor largo double con D redundante 
o El número 23 después de la E en el segundo ejemplo es 
implícitamente positivo. Ese ejemplo es equivalente a 
6.02E+23.
Tipos básicos del Lenguaje Java 
 Reales en coma flotante: double y float 
o Los literales en coma flotante se consideran del tipo double de 
forma predeterminada. Es posible declarar literales del tipo float 
agregando F o f al valor. 
o El formato de un número en coma flotante está definido en el 
documento The Java Language Specification de acuerdo con la 
norma IEEE (Institute of Electrical and Electronics Engineers) 754 
y utilizando los tamaños indicados en la siguiente tabla. Este 
formato es independiente de la plataforma. 
o Los literales en coma flotante se consideran double a menos 
que se declaren expresamente como float.
Actividad 3: Identificadores, palabras 
clave y tipos 
1. Comentarios 
2. Signos de punto y coma, bloques y espacio en 
blanco 
3. Identificadores 
4. Palabras clave en programación Java 
5. Tipos básicos del lenguaje Java 
6. Variables, declaraciones y asignaciones 
7. Tipos de referencia usados en Java 
8. Construcción e Inicialización de Objetos 
9. Asignación de referencias
Actividad 3: Identificadores, palabras clave y tipos 
Variables, declaraciones y asignaciones 
En el programa siguiente se explica cómo declarar y asignar valores a 
variables con tipos int, float, boolean, char y String:
Actividad 3: Identificadores, palabras clave y tipos 
Variables, declaraciones y asignaciones 
Las líneas siguientes contienen ejemplos de asignaciones no válidas: 
y = 3.1415926; 
// 3.1415926 no es un tipo int 
// Necesita conversión de tipos y el decimal se 
truncará. 
w = 175,000; 
// El signo de coma (,) no puede aparecer; 
truth = 1; 
// éste es un error de programación frecuente entre 
programadores habituados a C / C++ 
z = 3.14156; 
// No se puede especificar un valor de tamaño double 
en una variable declarada como float. Requiere 
conversión de tipos.
Actividad 3: Identificadores, palabras 
clave y tipos 
1. Comentarios 
2. Signos de punto y coma, bloques y espacio en 
blanco 
3. Identificadores 
4. Palabras clave en programación Java 
5. Tipos básicos del lenguaje Java 
6. Variables, declaraciones y asignaciones 
7. Tipos de referencia usados en Java 
8. Construcción e Inicialización de Objetos 
9. Asignación de referencias
Actividad 3: Identificadores, palabras clave y tipos 
Tipos de referencia usados en Java 
Como hemos indicado, hay ocho tipos de datos primitivos en Java: 
boolean, char, byte, short, int, long, float y double. El resto de los tipos hacen 
referencia a objetos en lugar de a datos primitivos. Las variables que hacen 
referencia a objetos se denominan variables de referencia. Por ejemplo, puede 
definir una clase MyDate: 
public class MyDate { 
private int day = 1; 
private int month = 1; 
private int year = 2000; 
public MyDate(int day, int month, int year) { ... } 
public String toString() { ... } 
} 
La variable today contiene una referencia al objeto MyDate.
Actividad 3: Identificadores, palabras clave y tipos 
Tipos de referencia usados en Java 
Como hemos indicado, hay ocho tipos de datos primitivos en Java: 
boolean, char, byte, short, int, long, float y double. El resto de los tipos hacen 
referencia a objetos en lugar de a datos primitivos. Las variables que hacen 
referencia a objetos se denominan variables de referencia. Por ejemplo, puede 
definir una clase MyDate: 
En el código siguiente se muestra un ejemplo de uso de MyDate: 
public class TestMyDate { 
public static void main(String[] args) { 
MyDate today = new MyDate(22, 7, 1964); 
} 
} 
La variable today contiene una referencia al objeto MyDate.
Actividad 3: Identificadores, palabras 
clave y tipos 
1. Comentarios 
2. Signos de punto y coma, bloques y espacio en 
blanco 
3. Identificadores 
4. Palabras clave en programación Java 
5. Tipos básicos del lenguaje Java 
6. Variables, declaraciones y asignaciones 
7. Tipos de referencia usados en Java 
8. Construcción e Inicialización de Objetos 
9. Asignación de referencias
Actividad 3: Identificadores, palabras clave y tipos 
Construcción e inicialización de objetos 
Ya hemos visto cómo ejecutar una llamada a new Xyz() a fin de asignar 
espacio para un objeto nuevo. Ahora veremos cómo colocar argumentos 
entre los paréntesis, por ejemplo new MyDate(22, 7, 1964). 
El uso de la palabra clave new produce el siguiente resultado: 
1. En primer lugar se asigna e inicializa el espacio del nuevo objeto 
como 0 o vacío (null). En programación Java, esta fase es 
indivisible para garantizar que no habrá objetos que contengan 
valores aleatorios. 
2. En segundo lugar se realiza cualquier inicialización explícita. 
3. En tercer lugar se ejecuta un constructor, que es un método 
especial. Los argumentos del paréntesis pasados a new se pasan al 
constructor(22, 7, 1964). 
4. Por último, el valor resultante de la operación new es una 
referencia al nuevo objeto en el espacio de memoria dinámica. Esta 
referencia se guarda en la variable de referencia.
Actividad 3: Identificadores, palabras clave y tipos 
Asignación y organización de la memoria 
En el cuerpo de los métodos, la declaración siguiente asigna espacio de 
almacenamiento únicamente para la referencia mostrada en la Figura 3-1: 
MyDate my_birth = new MyDate(22, 7, 1964); 
my_birth 
???? 
Figura 3-1 Declaración de la referencia al objeto 
La palabra clave new del ejemplo siguiente implica la asignación e 
inicialización del espacio de almacenamiento, como se ilustra en la 
Figura 3-2.
Actividad 3: Identificadores, palabras clave y tipos 
Inicialización explícita de los atributos 
Si introduce expresiones de asignación sencillas en las declaraciones de 
miembros, puede inicializar los miembros de forma explícita durante la 
construcción del objeto. 
Como puede verse en la Figura 3-3, los tres atributos de la clase MyDate 
del ejemplo se han inicializado de forma expresa:
Actividad 3: Identificadores, palabras clave y tipos 
Ejecución del constructor 
La parte final de la inicialización de un objeto nuevo es llamar al 
constructor. Éste permite sobrescribir la inicialización predeterminada. 
Es posible realizar cálculos, así como pasar argumentos al proceso de 
construcción para que el código que solicita la construcción del nuevo 
objeto pueda controlar el objeto creado. 
En el ejemplo de la Figura 3-4 puede verse la llamada al constructor:
Actividad 3: Identificadores, palabras clave y tipos 
Asignación de una variable 
Asignación con la que se establece la variable de referencia my_birth 
de forma que haga referencia al objeto recién creado, como se 
muestra en la Figura 3-5.
Actividad 3: Identificadores, palabras clave y tipos 
La historia no acaba aquí 
En realidad, construir e inicializar objetos es más complejo de lo que aquí 
se explica. El tema se trata con mayor profundidad en el Adtividad 6.
Actividad 3: Identificadores, palabras 
clave y tipos 
1. Comentarios 
2. Signos de punto y coma, bloques y espacio en 
blanco 
3. Identificadores 
4. Palabras clave en programación Java 
5. Tipos básicos del lenguaje Java 
6. Variables, declaraciones y asignaciones 
7. Tipos de referencia usados en Java 
8. Construcción e Inicialización de Objetos 
9. Asignación de referencias
Actividad 3: Identificadores, palabras clave y tipos 
Asignación de referencias 
En programación Java, una variable declarada con un tipo de clase se 
conoce como tipo de referencia, porque hace referencia a un tipo no 
primitivo. Esto tiene algunas implicaciones en cuanto al significado de 
la asignación. Observe ese fragmento de código: 
int x = 7; 
int y = x; 
MyDate s = new MyDate(22, 7, 1964); 
MyDate t = s; 
Se han creado cuatro variables: dos con tipos primitivos int y otras dos 
que hacen referencia al objeto MyDate. El valor de x es 7 y ese valor se 
copia en y. Tanto x como y son variables independientes y los cambios 
que se realicen en una de ellas no afectarán a la otra.
Actividad 3: Identificadores, palabras clave y tipos 
Asignación de referencias 
En el caso de las variables s y t, sólo existe el objeto MyDate, que 
contiene la fecha del 22 de julio de 1964. Tanto s como t se 
refieren al mismo objeto, como se observa en la Figura 3-6.
Actividad 3: Identificadores, palabras clave y tipos 
Asignación de referencias 
Si se reasigna la variable t, se crea el nuevo objeto MyDate (con el 
valor 22 de diciembre de1964) y t hace referencia a este nuevo 
objeto, como se muestra en la Figura 3-7. El código aparecería 
como:
Actividad 3: Identificadores, palabras clave y tipos 
Paso por valor 
El lenguaje Java pasa los argumentos únicamente por valor, es decir, no se 
puede cambiar el valor del argumento del método que hace la llamada 
desde el método que recibe la llamada. 
No obstante, cuando se pasa una instancia de un objeto en forma de 
argumento a un método, el valor del argumento no es el objeto en sí, sino 
una referencia al objeto. Es posible cambiar el contenido de ese objeto en 
el método que recibe la llamada, pero no en la referencia al objeto. 
Para muchos, esto parece una operación de paso por referencia y su 
comportamiento tiene cosas en común con el del paso por referencia. 
Sin embargo, no es exactamente así por dos razones. La primera es que la 
capacidad para cambiar el elemento pasado a un método sólo se aplica a 
los objetos, no a los valores de tipos primitivos. La segunda es el que el 
valor asociado a una variable de tipo objeto es la referencia al objeto y no 
el objeto en sí. Ésta es una distinción importante en otros aspectos y, si se 
entiende con claridad, explica perfectamente la idea de que el lenguaje 
Java pasa los argumentos por valor.
Actividad 3: Identificadores, palabras clave y tipos 
Paso por valor 
El siguiente ejemplo de código ilustra este concepto: 
public class PassTest { 
// Métodos para cambiar los valores actuales 
public static void changeInt(int value) { 
value = 55; 
} 
public static void changeObjectRef(MyDate ref) { 
ref = new MyDate(1, 1, 2000); 
} 
public static void changeObjectAttr(MyDate ref) { 
ref.setDay(4); 
} 
public static void main(String args[]) { 
MyDate date; 
int val; 
// Asigna el entero 
val = 11; 
// Intenta cambiarlo
Actividad 3: Identificadores, palabras clave y tipos 
Paso por valor 
changeInt(val); 
// ¿Cuál es el valor actual? 
System.out.println("El valor entero es: " + val); 
// Asigna la fecha 
date = new MyDate(22, 7, 1964); 
// Intenta cambiarla 
changeObjectRef(date); 
// ¿Cuál es el valor actual? 
System.out.println("Mi fecha: " + date); 
// Ahora se cambia el atributo de día 
// mediante la referencia al objeto 
changeObjectAttr(date); 
// ¿Cuál es el valor actual? 
System.out.println("Mi fecha: " + date); 
} 
}
Actividad 3: Identificadores, palabras clave y tipos 
Paso por valor 
La salida en pantalla de este código es la siguiente: 
java PassTest 
El valor entero es: 11 
Mi fecha: 22-7-1964 
Mi fecha: 4-7-1964 
El método changeObjectRef no cambia el objeto MyDate, sino 
que es el método changeObjectAttr el que cambia el atributo de 
día (day) del objeto MyDate.
Actividad 3: Identificadores, palabras clave y tipos 
Referencia this 
La palabra clave this se utiliza con dos fines: 
● Resolver la ambigüedad entre las variables de instancia y los 
parámetros. 
● Pasar el objeto actual como parámetro a otro método. 
El texto del Código 3-1 proporciona una definición de clase donde 
pueden verse estos usos. La clase MyDate declara variables de 
instancias, líneas 2–4. Uno de los parámetros destinados a uno de los 
constructores (líneas 6–10) también se denomina day. Por tanto, en ese 
contexto, la palabra this resuelve la ambigüedad (línea 7). El método 
addDays crea un nuevo objeto de fecha (línea 18). En esta llamada al 
constructor, el método utiliza la palabra this como argumento para 
hacer referencia al objeto actual.
Actividad 3: Identificadores, palabras clave y tipos 
Código 3-1 Uso de la palabra clave this 
public class MyDate { 
private int day = 1; 
private int month = 1; 
private int year = 2000; 
public MyDate(int day, int month, int year) { 
This.day = day; 
this.month = month; 
this.year = year; 
} 
public MyDate(MyDate date) { 
this.day = date.day; 
this.month = date.month; 
this.year = date.year; 
}
Actividad 3: Identificadores, palabras clave y tipos 
Código 3-1 Uso de la palabra clave this 
public MyDate addDays(int moreDays) { 
MyDate newDate = new MyDate(this); 
newDate.day = newDate.day + moreDays; 
// No implementado aún: código de búsqueda cíclica 
(wrap around)... 
return newDate; 
} 
public String toString() { 
return "" + day + "-" + month + "-" + year; 
} 
}
Actividad 3: Identificadores, palabras clave y tipos 
Convenciones de codificación en el lenguaje Java 
Para escribir código en lenguaje Java se utilizan las siguientes convenciones: 
● Paquetes: los nombres de paquetes se escriben en minúsculas. 
package transporte.objetos 
● Clases: los nombres de clases deberían ser sustantivos escritos en letras 
mayúsculas y minúsculas, con la primera letra de cada palabra en 
ayúscula. 
class LibroContabilidad 
● Interfaces: los nombres de interfaces siguen la mismas normas que los 
nombres de las clases. interface Contabilidad 
● Métodos: los métodos deberían ser verbos escritos en letras mayúsculas y 
minúsculas, y con la inicial en minúscula. Dentro de cada nombre de método, las 
palabras se separan con letras en mayúsculas. Conviene limitar el uso de signos 
de subrayado. cuadrarLibro()
Actividad 3: Identificadores, palabras clave y tipos 
Convenciones de codificación en el lenguaje Java 
● Variables: deberían escribirse en mayúsculas y minúsculas, con la inicial 
en inúscula. Las palabras se separan mediante letras en mayúscula. 
Conviene limitar el uso de signos de subrayado y evitar el uso del 
signo de dólar ($) porque este carácter tiene un significado especial 
para las clases internas. clienteActual 
El nombre de las variables tiene que ser explicativo para que 
indique a cualquier lector el propósito de su uso. Trate de no utilizar 
nombres de un solo carácter salvo para variables temporales 
desechables (por ejemplo, i, j y k utilizadas como variables de 
control de bucles). 
● Constantes: las constantes primitivas deben escribirse enteramente en 
mayúsculas y separando las palabras mediante signos de 
subrayado. 
Las constantes de objeto pueden utilizar una combinación de 
mayúsculas y minúsculas. 
TOTAL_NOMINA 
CANTIDAD_MAXIMA
Actividad 3: Identificadores, palabras clave y tipos 
Convenciones de codificación en el lenguaje Java 
● Estructuras de control: cuando las sentencias forman parte de una 
estructura de control del flujo, como es el caso de if-else o for, es 
preciso escribirlas entre llaves ({ }), aunque sean sentencias sencillas. 
if ( condición ) { 
sentencia1; 
} else { 
sentencia2; 
} 
● Espacios: sólo debe colocarse una sentencia por línea y utilizar sangrías de 
dos o cuatro espacios para facilitar la lectura del código. 
El número de espacios puede variar en función de las 
convenciones de codificación utilizadas.
Actividad 3: Identificadores, palabras clave y tipos 
Convenciones de codificación en el lenguaje Java 
● Comentarios: utilice comentarios para explicar los segmentos de 
código que no resultan obvios. Debe utilizar el delimitador // 
para los comentarios normales y marcar las secciones de 
comentario de gran tamaño usando/* . . . */como 
delimitadores. Los comentarios de documentación se delimitan 
mediante los caracteres 
/** . . . */y sirven a javadoc como texto de entrada para 
generar la documentación HTML del código. 
// Comentario en una sola línea. 
/* Los comentarios pueden ser más largos y ocupar varias 
líneas. */ 
/** Comentario destinado a documentación. 
* @see la clase Another para más información. 
*/
Actividad 3: Identificadores, palabras clave y tipos 
Convenciones de codificación en el lenguaje Java 
Nota: La palabra @see es una etiqueta especial de javadoc que produce 
el efecto de un vínculo véase también y hace referencia a una clase 
o un método. Para obtener más información sobre javadoc, consulte 
la definición del sistema de documentación explicada en el 
documento The Design of Distributed Hyperlinked Programming 
Documentation, cuya autora es Lisa Friendly. Puede encontrarlo en 
la siguiente dirección: 
http://java.sun.com/docs/javadoc-paper.html 
Asimismo, si precisa más información sobre las convenciones de 
codificación del lenguaje Java de Sun, consulte la página web 
siguiente: 
http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html

Más contenido relacionado

La actualidad más candente

Definición de punteros en C++ en Introducción a la Programación
Definición de punteros en C++ en Introducción a la ProgramaciónDefinición de punteros en C++ en Introducción a la Programación
Definición de punteros en C++ en Introducción a la ProgramaciónFacultad de Ciencias y Sistemas
 
Programación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaProgramación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaAngel Vázquez Patiño
 
Cadenas y funciones de cadena
Cadenas y funciones de cadenaCadenas y funciones de cadena
Cadenas y funciones de cadenaTensor
 
Estructura de Datos - Unidad 4 Estructuras no lineales
Estructura de Datos - Unidad 4 Estructuras no linealesEstructura de Datos - Unidad 4 Estructuras no lineales
Estructura de Datos - Unidad 4 Estructuras no linealesJosé Antonio Sandoval Acosta
 
Tipos de atributos y tipos de relaciones
Tipos de atributos y tipos de relacionesTipos de atributos y tipos de relaciones
Tipos de atributos y tipos de relacionesbasilioj
 
Estructura de datos - Unidad 1: Introducción a las estructuras de datos
Estructura de datos - Unidad 1: Introducción a las estructuras de datosEstructura de datos - Unidad 1: Introducción a las estructuras de datos
Estructura de datos - Unidad 1: Introducción a las estructuras de datosJosé Antonio Sandoval Acosta
 
Estructuras De Datos-Arreglos
Estructuras De Datos-Arreglos Estructuras De Datos-Arreglos
Estructuras De Datos-Arreglos Simeon Bordones
 
5. Ejercicios normalización
5. Ejercicios normalización5. Ejercicios normalización
5. Ejercicios normalizaciónMarcelo Herrera
 
Tópicos Avanzados de Programación - Unidad 3 programacion concurrente
Tópicos Avanzados de Programación - Unidad 3 programacion concurrenteTópicos Avanzados de Programación - Unidad 3 programacion concurrente
Tópicos Avanzados de Programación - Unidad 3 programacion concurrenteJosé Antonio Sandoval Acosta
 

La actualidad más candente (20)

Pseint
PseintPseint
Pseint
 
Definición de punteros en C++ en Introducción a la Programación
Definición de punteros en C++ en Introducción a la ProgramaciónDefinición de punteros en C++ en Introducción a la Programación
Definición de punteros en C++ en Introducción a la Programación
 
Recursividad
RecursividadRecursividad
Recursividad
 
Programación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaProgramación 3: Clases y objetos en Java
Programación 3: Clases y objetos en Java
 
Cadenas y funciones de cadena
Cadenas y funciones de cadenaCadenas y funciones de cadena
Cadenas y funciones de cadena
 
Modelo relacional
Modelo relacionalModelo relacional
Modelo relacional
 
Procedimientos almacenados en MySQL
Procedimientos almacenados en MySQLProcedimientos almacenados en MySQL
Procedimientos almacenados en MySQL
 
Listas,pilas y colas Estructura de Datos
Listas,pilas y colas Estructura de DatosListas,pilas y colas Estructura de Datos
Listas,pilas y colas Estructura de Datos
 
Estructura de Datos - Unidad 4 Estructuras no lineales
Estructura de Datos - Unidad 4 Estructuras no linealesEstructura de Datos - Unidad 4 Estructuras no lineales
Estructura de Datos - Unidad 4 Estructuras no lineales
 
Conceptos Fundamentales de Base de Datos
Conceptos Fundamentales de Base de DatosConceptos Fundamentales de Base de Datos
Conceptos Fundamentales de Base de Datos
 
Tipos de atributos y tipos de relaciones
Tipos de atributos y tipos de relacionesTipos de atributos y tipos de relaciones
Tipos de atributos y tipos de relaciones
 
Estructura datos pilas y colas
Estructura datos pilas y colasEstructura datos pilas y colas
Estructura datos pilas y colas
 
Estructuras de datos
Estructuras de datosEstructuras de datos
Estructuras de datos
 
Estructura de datos - Unidad 1: Introducción a las estructuras de datos
Estructura de datos - Unidad 1: Introducción a las estructuras de datosEstructura de datos - Unidad 1: Introducción a las estructuras de datos
Estructura de datos - Unidad 1: Introducción a las estructuras de datos
 
Indices en oracle
Indices en oracleIndices en oracle
Indices en oracle
 
Algoritmos de Ordenamiento externo
Algoritmos de Ordenamiento externoAlgoritmos de Ordenamiento externo
Algoritmos de Ordenamiento externo
 
Estructuras De Datos-Arreglos
Estructuras De Datos-Arreglos Estructuras De Datos-Arreglos
Estructuras De Datos-Arreglos
 
Modelo de datos
Modelo de datosModelo de datos
Modelo de datos
 
5. Ejercicios normalización
5. Ejercicios normalización5. Ejercicios normalización
5. Ejercicios normalización
 
Tópicos Avanzados de Programación - Unidad 3 programacion concurrente
Tópicos Avanzados de Programación - Unidad 3 programacion concurrenteTópicos Avanzados de Programación - Unidad 3 programacion concurrente
Tópicos Avanzados de Programación - Unidad 3 programacion concurrente
 

Destacado

GeoCENS OGC Standards and Sensor Web Enablement presented at GeoCENS Banff Se...
GeoCENS OGC Standards and Sensor Web Enablement presented at GeoCENS Banff Se...GeoCENS OGC Standards and Sensor Web Enablement presented at GeoCENS Banff Se...
GeoCENS OGC Standards and Sensor Web Enablement presented at GeoCENS Banff Se...Cybera Inc.
 
Certificación java 6 cap 1
Certificación java 6 cap 1Certificación java 6 cap 1
Certificación java 6 cap 1srBichoRaro
 
GeoChronos: A Platform for Earth Observation Scientists
GeoChronos: A Platform for Earth Observation ScientistsGeoChronos: A Platform for Earth Observation Scientists
GeoChronos: A Platform for Earth Observation ScientistsCybera Inc.
 
Tema II. EL INTERNET Y LA RED: INFRAESTRUCTURA PARA EL COMERCIO ELECTRÓNICO
Tema II. EL INTERNET Y LA RED: INFRAESTRUCTURA PARA EL COMERCIO ELECTRÓNICOTema II. EL INTERNET Y LA RED: INFRAESTRUCTURA PARA EL COMERCIO ELECTRÓNICO
Tema II. EL INTERNET Y LA RED: INFRAESTRUCTURA PARA EL COMERCIO ELECTRÓNICOmrycc
 
Presentación Infraestructura Colombia -EE.UU
Presentación Infraestructura Colombia -EE.UUPresentación Infraestructura Colombia -EE.UU
Presentación Infraestructura Colombia -EE.UUProColombia
 
Infraestructura Colombia - Usa
Infraestructura Colombia - UsaInfraestructura Colombia - Usa
Infraestructura Colombia - UsaProColombia
 
Estructuras de control en Java
Estructuras de control en JavaEstructuras de control en Java
Estructuras de control en Javaquesada_diego
 
Java y sus caracteristicas
Java y sus caracteristicasJava y sus caracteristicas
Java y sus caracteristicasAny Saula
 
Infraestructura de Tecnología de la Información
Infraestructura de Tecnología de la InformaciónInfraestructura de Tecnología de la Información
Infraestructura de Tecnología de la Informaciónmemin987
 
Modelo conceptual de uml
Modelo conceptual de umlModelo conceptual de uml
Modelo conceptual de umlSergio Girado
 

Destacado (11)

Expresiones y control del flujo Java
Expresiones y control del flujo JavaExpresiones y control del flujo Java
Expresiones y control del flujo Java
 
GeoCENS OGC Standards and Sensor Web Enablement presented at GeoCENS Banff Se...
GeoCENS OGC Standards and Sensor Web Enablement presented at GeoCENS Banff Se...GeoCENS OGC Standards and Sensor Web Enablement presented at GeoCENS Banff Se...
GeoCENS OGC Standards and Sensor Web Enablement presented at GeoCENS Banff Se...
 
Certificación java 6 cap 1
Certificación java 6 cap 1Certificación java 6 cap 1
Certificación java 6 cap 1
 
GeoChronos: A Platform for Earth Observation Scientists
GeoChronos: A Platform for Earth Observation ScientistsGeoChronos: A Platform for Earth Observation Scientists
GeoChronos: A Platform for Earth Observation Scientists
 
Tema II. EL INTERNET Y LA RED: INFRAESTRUCTURA PARA EL COMERCIO ELECTRÓNICO
Tema II. EL INTERNET Y LA RED: INFRAESTRUCTURA PARA EL COMERCIO ELECTRÓNICOTema II. EL INTERNET Y LA RED: INFRAESTRUCTURA PARA EL COMERCIO ELECTRÓNICO
Tema II. EL INTERNET Y LA RED: INFRAESTRUCTURA PARA EL COMERCIO ELECTRÓNICO
 
Presentación Infraestructura Colombia -EE.UU
Presentación Infraestructura Colombia -EE.UUPresentación Infraestructura Colombia -EE.UU
Presentación Infraestructura Colombia -EE.UU
 
Infraestructura Colombia - Usa
Infraestructura Colombia - UsaInfraestructura Colombia - Usa
Infraestructura Colombia - Usa
 
Estructuras de control en Java
Estructuras de control en JavaEstructuras de control en Java
Estructuras de control en Java
 
Java y sus caracteristicas
Java y sus caracteristicasJava y sus caracteristicas
Java y sus caracteristicas
 
Infraestructura de Tecnología de la Información
Infraestructura de Tecnología de la InformaciónInfraestructura de Tecnología de la Información
Infraestructura de Tecnología de la Información
 
Modelo conceptual de uml
Modelo conceptual de umlModelo conceptual de uml
Modelo conceptual de uml
 

Similar a Identificadores palabras clave y tipos Java

Estructura Sintactica
Estructura SintacticaEstructura Sintactica
Estructura SintacticaluchoGL
 
Estructura sintactica de los lenguajes de programacion y bases de datos
Estructura sintactica de los lenguajes de programacion y bases de datosEstructura sintactica de los lenguajes de programacion y bases de datos
Estructura sintactica de los lenguajes de programacion y bases de datosspedy93
 
Fundamentos de programación Java
Fundamentos de programación JavaFundamentos de programación Java
Fundamentos de programación Javaquesada_diego
 
Unidad i antecedentes
Unidad i antecedentesUnidad i antecedentes
Unidad i antecedentesBrayanBaffz
 
Unidad i antecedentes1
Unidad i antecedentes1Unidad i antecedentes1
Unidad i antecedentes1BrayanBaffz
 
Curso Java Inicial 2 - Introducción y Sintaxis
Curso Java Inicial  2 - Introducción y SintaxisCurso Java Inicial  2 - Introducción y Sintaxis
Curso Java Inicial 2 - Introducción y SintaxisEmilio Aviles Avila
 
Estructura sintactica de los lenguajes
Estructura sintactica de los lenguajesEstructura sintactica de los lenguajes
Estructura sintactica de los lenguajesFenix Flame
 

Similar a Identificadores palabras clave y tipos Java (20)

A3 identificador palabraclavetipos
A3 identificador palabraclavetiposA3 identificador palabraclavetipos
A3 identificador palabraclavetipos
 
Estructura Sintactica
Estructura SintacticaEstructura Sintactica
Estructura Sintactica
 
Estructura sintactica de los lenguajes de programacion y bases de datos
Estructura sintactica de los lenguajes de programacion y bases de datosEstructura sintactica de los lenguajes de programacion y bases de datos
Estructura sintactica de los lenguajes de programacion y bases de datos
 
Fundamentos de programación Java
Fundamentos de programación JavaFundamentos de programación Java
Fundamentos de programación Java
 
Tipos Primitivos y Elementos Léxicos de Java
Tipos Primitivos y Elementos Léxicos de JavaTipos Primitivos y Elementos Léxicos de Java
Tipos Primitivos y Elementos Léxicos de Java
 
Unidad i antecedentes
Unidad i antecedentesUnidad i antecedentes
Unidad i antecedentes
 
Unidad i antecedentes1
Unidad i antecedentes1Unidad i antecedentes1
Unidad i antecedentes1
 
Tipos de datos
Tipos de datosTipos de datos
Tipos de datos
 
generalidades java
generalidades javageneralidades java
generalidades java
 
Curso Java Inicial 2 - Introducción y Sintaxis
Curso Java Inicial  2 - Introducción y SintaxisCurso Java Inicial  2 - Introducción y Sintaxis
Curso Java Inicial 2 - Introducción y Sintaxis
 
Actividades 1 7
Actividades 1 7Actividades 1 7
Actividades 1 7
 
Actividades 1 7
Actividades 1 7Actividades 1 7
Actividades 1 7
 
Actividades 1 7
Actividades 1 7Actividades 1 7
Actividades 1 7
 
Estructura sintactica de los lenguajes
Estructura sintactica de los lenguajesEstructura sintactica de los lenguajes
Estructura sintactica de los lenguajes
 
Prolog
PrologProlog
Prolog
 
Prolog2
Prolog2Prolog2
Prolog2
 
Actividades 1-7
Actividades 1-7Actividades 1-7
Actividades 1-7
 
Ap2 java
Ap2   javaAp2   java
Ap2 java
 
Introduccion java
Introduccion javaIntroduccion java
Introduccion java
 
Actividad N° 2 - Unidad 4
Actividad N° 2 - Unidad 4 Actividad N° 2 - Unidad 4
Actividad N° 2 - Unidad 4
 

Último

codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinavergarakarina022
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdfgimenanahuel
 
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxPryhaSalam
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.amayarogel
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdfDemetrio Ccesa Rayme
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticosisabeltrejoros
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleJonathanCovena1
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadAlejandrino Halire Ccahuana
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzprofefilete
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxjosetrinidadchavez
 
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxPRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxinformacionasapespu
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptELENA GALLARDO PAÚLS
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuaDANNYISAACCARVAJALGA
 

Último (20)

Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karina
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf
 
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdf
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticos
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo Sostenible
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdad
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
 
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxPRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahua
 

Identificadores palabras clave y tipos Java

  • 1. Actividad 3: Identificadores, palabras clave y tipos UD – Lenguajes y Herramientas de Desarrollo de Software
  • 2. Introducción  El contenido de la siguiente presentación es íntegramente el contenido del curso Java Programming Language, Java SE 6 de Oracle, con algunos agregados propios de Iberotec.  Se utiliza el material oficial de Oracle, por ser Iberotec miembro del Oracle Academy.
  • 3. Actividad 3: Identificadores, palabras clave y tipos 1. Comentarios 2. Signos de punto y coma, bloques y espacio en blanco 3. Identificadores 4. Palabras clave en programación Java 5. Tipos básicos del lenguaje Java 6. Variables, declaraciones y asignaciones 7. Tipos de referencia usados en Java 8. Construcción e Inicialización de Objetos 9. Asignación de referencias
  • 4. Comentarios  Existen tres formas válidas de introducir comentarios: // comentario en una línea /* comentario en una o varias líneas */ /** el comentario de documentación también puede abarcar más de una línea */
  • 5. Comentarios  Los comentarios de documentación situados inmediatamente antes de una declaración (de una variable, un método o una clase) indican que ese comentario debería incluirse en cualquier documentación que se genere de forma automática (por ejemplo, los archivos HTML generados por el comando javadoc) para que sirvan de explicación del elemento declarado.  El formato de estos comentarios y el uso de la herramienta javadoc™ se describen en la documentación del SDK de Java 2. Vaya a la siguiente dirección: http://docs.oracle.com/javase/1.5.0/docs/guide/javadoc/index.html
  • 6. Actividad 3: Identificadores, palabras clave y tipos 1. Comentarios 2. Signos de punto y coma, bloques y espacio en blanco 3. Identificadores 4. Palabras clave en programación Java 5. Tipos básicos del lenguaje Java 6. Variables, declaraciones y asignaciones 7. Tipos de referencia usados en Java 8. Construcción e Inicialización de Objetos 9. Asignación de referencias
  • 7. Signos de punto y coma, bloques y espacio en blanco  En el lenguaje Java, una sentencia se compone de una o varias líneas de código que se cierran con un signo de punto y coma (;). //Por ejemplo: totals = a + b + c + d + e + f; //Equivale a totals = a + b + c + d + e + f;
  • 8. Signos de punto y coma, bloques y espacio en blanco  Un bloque, a veces denominado sentencia compuesta, es un conjunto de sentencias delimitadas por llaves de apertura y cierre ({ }). Los bloques proporcionan algunas ventajas que se describen en el Módulo, “Expresiones y control del flujo”. Por ahora, piense en los bloques como en conjuntos de sentencias agrupadas. // sentencia en un bloque { x = y + 1; y = x + 1; }
  • 9. Signos de punto y coma, bloques y espacio en blanco // definición de una clase contenida en un bloque public class MyDate { private int day; private int month; private int year; } // un bloque de sentencias puede estar anidado en otro bloque while ( i < large ) { a = a + i; // bloque anidado if ( a == max ) { b = b + a; a = 0; } i = i + 1; }
  • 10. Signos de punto y coma, bloques y espacio en blanco  Es posible incluir espacios en blanco entre los elementos del código. Se admite cualquier cantidad de espacio. Normalmente se incluye en forma de tabuladores, espacios y saltos de línea para mejorar la calidad y la organización del código fuente. //Compare {int x;x=23*54;} //Con: { int x; x = 23 * 54; }
  • 11. Actividad 3: Identificadores, palabras clave y tipos 1. Comentarios 2. Signos de punto y coma, bloques y espacio en blanco 3. Identificadores 4. Palabras clave en programación Java 5. Tipos básicos del lenguaje Java 6. Variables, declaraciones y asignaciones 7. Tipos de referencia usados en Java 8. Construcción e Inicialización de Objetos 9. Asignación de referencias
  • 12. Identificadores  En el lenguaje Java, un identificador es un nombre asignado a una variable, una clase o un método. Los identificadores empiezan por una letra, el signo de subrayado (_) o el símbolo del dólar ($). Los caracteres posteriores pueden ser dígitos. No tienen longitud máxima y existe diferencia entre mayúsculas y minúsculas. He aquí algunos identificadores válidos: ● identificador ● nombreUsuario ● nombre_usuario ● _variable_sistema ● $transaccion
  • 13. Identificadores  El código fuente de la tecnología Java se escribe con el juego de caracteres Unicode de 16 bits en lugar de texto ASCII de 8 bits, por lo que admite muchas más letras de las que componen el abecedario inglés (a-z y A–Z). Aunque los identificadores pueden usar caracteres no pertenecientes al juego ASCII, tenga presente lo siguiente: o Unicode puede admitir caracteres diferentes que tienen el mismo aspecto. o Los nombres de clases sólo deberían escribirse en caracteres ASCII porque la mayoría de los sistemas de archivos no admiten caracteres Unicode.
  • 14. Identificadores  Un identificador no puede ser una palabra clave, pero puede contener una palabra clave como parte de su nombre. Por ejemplo thisOne es un identificador válido, pero this no lo es porque this es una palabra clave reservada para el lenguaje Java.  Los identificadores que contienen el signo de dólar ($) son poco frecuentes en general, aunque lenguajes como BASIC y los sistemas AX/VMS hacen un amplio uso de ellos. Puesto que no son habituales seguramente es mejor evitar su uso, a menos que exista alguna convención local o alguna razón de peso para incluir este signo en el identificador.
  • 15. Actividad 3: Identificadores, palabras clave y tipos 1. Comentarios 2. Signos de punto y coma, bloques y espacio en blanco 3. Identificadores 4. Palabras clave en programación Java 5. Tipos básicos del lenguaje Java 6. Variables, declaraciones y asignaciones 7. Tipos de referencia usados en Java 8. Construcción e Inicialización de Objetos 9. Asignación de referencias
  • 16. Palabras clave en programación Java  Las palabras clave son palabras reservadas que tienen un significado especial para el compilador de Java. Sirven para identificar el nombre de un determinado tipo de datos o un constructor del programa.  La siguiente Tabla con tiene una lista de las palabras clave utilizadas en el lenguaje Java.
  • 17. Palabras clave en programación Java
  • 18. Palabras clave en programación Java  Aunque parezca que true y false son palabras clave, en realidad son valores literales booleanos, según se explica en el documento The Java Language Specification (sección 3.10.3). Igualmente, null es, de hecho, el literal null (sección 3.10.7).  Sin embargo, los literales true, false y null escritos en minúsculas no pueden usarse como identificadores.
  • 19. Palabras clave en programación Java  Es necesario hacer algunas consideraciones importantes sobre las palabras clave: o Los literales true, false y null se escriben en minúsculas, no en mayúsculas como en el lenguaje C++. Técnicamente son literales, no palabras clave, pero esta distinción es puramente académica. o No existe ningún operador sizeof; no puede realizarse el acceso directo a la memoria, por lo que la información carecería de valor. o Las palabras clave goto y const no se utilizan en programación Java.
  • 20. Actividad 3: Identificadores, palabras clave y tipos 1. Comentarios 2. Signos de punto y coma, bloques y espacio en blanco 3. Identificadores 4. Palabras clave en programación Java 5. Tipos básicos del lenguaje Java 6. Variables, declaraciones y asignaciones 7. Tipos de referencia usados en Java 8. Construcción e Inicialización de Objetos 9. Asignación de referencias
  • 21. Tipos básicos del Lenguaje Java  El lenguaje Java incorpora numerosos tipos de datos. Éstos se clasifican en dos grandes categorías: tipos de clase y tipos primitivos. Los tipos primitivos son simples valores, no objetos. Los tipos de clase se utilizan para tipos más complejos, incluidos todos los que declara el propio programador. Los tipos de clase se utilizan para crear objetos.
  • 22. Tipos básicos del Lenguaje Java  Tipos primitivos o El lenguaje Java define ocho tipos de datos primitivos que se enmarcan en cuatro categorías:  Lógicos: boolean Textuales: char Enteros: byte, short, int y long Reales en coma flotante: double y float
  • 23. Tipos básicos del Lenguaje Java  Lógicos: boolean o Los valores lógicos se representan mediante el tipo boolean, que puede contener uno de estos dos valores: true (verdadero) o false (falso). Estos dos valores se utilizan para representar uno de dos posibles estados, como activado/desactivado o sí/no. El tipo boolean admite dos valores literales: true y false. El ejemplo de código siguiente contiene la declaración e inicialización de una variable de tipo boolean: // declara la variable verdad como booleana y // le asigna el valor true boolean verdad = true;
  • 24. Tipos básicos del Lenguaje Java  Lógicos: boolean o No existe conversión de tipos entre enteros y booleanos. Algunos lenguajes, principalmente C y C++, permiten interpretar los valores numéricos como lógicos. No es el caso de Java. En este lenguaje, cuando se necesita un tipo boolean, sólo pueden utilizarse valores booleanos.
  • 25. Tipos básicos del Lenguaje Java  Textuales: char o Los distintos caracteres se representan mediante el tipo char. Un valor char representa un carácter Unicode de 16 bits sin signo. Es necesario escribir los literales char entre apóstrofos (' '). Por ejemplo: ‘a’ La letra a ‘t’ Un tabulador ‘u????’ Un carácter Unicode concreto, ????, que se sustituye exactamente por cuatro dígitos hexadecimales. Por ejemplo, ’u03A6’ es la letra griega fi [Φ].
  • 26. Tipos básicos del Lenguaje Java  Textuales: String o El tipo String es un tipo de clase, no primitivo, y se utiliza para representar cadenas de caracteres. Los caracteres utilizados en la secuencia son Unicode y la notación de barra invertida () usada para el tipo char se aplica también a String. Al revés de lo que ocurre en C y C++, la cadenas de caracteres no deben cerrarse con 0. o Los literales String se escriben entre comillas (“”). "El astuto zorro se lanza sobre el perro.“
  • 27. Tipos básicos del Lenguaje Java  He aquí algunos ejemplos de declaración e inicialización de variables del tipo char y String: // declara e inicializa una variable char char ch = ’A’; // declara dos variables char char ch1,ch2; // declara dos variables String y las inicializa String greeting = "Buenos días n"; String errorMessage = "No se ha encontrado el registro."; // declara dos variables String String str1,str2;
  • 28. Tipos básicos del Lenguaje Java  Enteros: byte, short, int y long o Hay cuatro tipos de datos enteros en Java. Cada uno de ellos se declara utilizando una de las siguientes palabras clave byte, short, int o long. o Puede representar los literales de los tipos enteros utilizando una notación decimal, octal o hexadecimal, como se muestra a continuación: 2 Éste es el formato decimal del entero 2. 077 El 0 inicial indica un valor octal. 0xBAAC El prefijo 0x indica que es un valor hexadecimal. o Todos los tipos numéricos en Java representan números con signo.
  • 29. Tipos básicos del Lenguaje Java  Enteros: byte, short, int y long o Los literales enteros son del tipo int, a menos que vayan explícitamente seguidos de la letra L, lo que indicaría que se trata de un valor long. Da igual escribir la L en mayúscula o minúscula. No obstante, no se recomienda la l minúscula porque resulta difícil diferenciarla del número 1. He aquí las versiones largas (long) de los literales citados anteriormente. //La L indica que el valor decimal 2 se representa como un entero largo. 2L //El 0 inicial indica un valor octal. 077L // El prefijo 0x indica que es un valor hexadecimal. 0xBAACL
  • 30. Tipos básicos del Lenguaje Java  Enteros: byte, short, int y long o En la siguiente Tabla figuran el tamaño y el intervalo de valores correspondientes a los cuatro tipos de enteros. La representación del intervalo de valores se define en la especificación del lenguaje Java como un complemento a 2 y es independiente de la plataforma.
  • 31. Tipos básicos del Lenguaje Java  Reales en coma flotante: double y float o Las variables de tipos reales en coma flotante se declaran con las palabras clave float o double. La lista siguiente contiene ejemplos de números en coma flotante. Un literal numérico es un número real en coma flotante si incluye un separador decimal y un exponente (la letra E o e), o bien si va seguido de la letra F o f (float) o de la letra D o d (double). 3.14 Valor en coma flotante sencillo (double) en notación estándar 6.02E23 Valor en coma flotante largo 2.718F Valor corto de precisión simple (float) 123.4E+306D Valor largo double con D redundante o El número 23 después de la E en el segundo ejemplo es implícitamente positivo. Ese ejemplo es equivalente a 6.02E+23.
  • 32. Tipos básicos del Lenguaje Java  Reales en coma flotante: double y float o Los literales en coma flotante se consideran del tipo double de forma predeterminada. Es posible declarar literales del tipo float agregando F o f al valor. o El formato de un número en coma flotante está definido en el documento The Java Language Specification de acuerdo con la norma IEEE (Institute of Electrical and Electronics Engineers) 754 y utilizando los tamaños indicados en la siguiente tabla. Este formato es independiente de la plataforma. o Los literales en coma flotante se consideran double a menos que se declaren expresamente como float.
  • 33. Actividad 3: Identificadores, palabras clave y tipos 1. Comentarios 2. Signos de punto y coma, bloques y espacio en blanco 3. Identificadores 4. Palabras clave en programación Java 5. Tipos básicos del lenguaje Java 6. Variables, declaraciones y asignaciones 7. Tipos de referencia usados en Java 8. Construcción e Inicialización de Objetos 9. Asignación de referencias
  • 34. Actividad 3: Identificadores, palabras clave y tipos Variables, declaraciones y asignaciones En el programa siguiente se explica cómo declarar y asignar valores a variables con tipos int, float, boolean, char y String:
  • 35. Actividad 3: Identificadores, palabras clave y tipos Variables, declaraciones y asignaciones Las líneas siguientes contienen ejemplos de asignaciones no válidas: y = 3.1415926; // 3.1415926 no es un tipo int // Necesita conversión de tipos y el decimal se truncará. w = 175,000; // El signo de coma (,) no puede aparecer; truth = 1; // éste es un error de programación frecuente entre programadores habituados a C / C++ z = 3.14156; // No se puede especificar un valor de tamaño double en una variable declarada como float. Requiere conversión de tipos.
  • 36. Actividad 3: Identificadores, palabras clave y tipos 1. Comentarios 2. Signos de punto y coma, bloques y espacio en blanco 3. Identificadores 4. Palabras clave en programación Java 5. Tipos básicos del lenguaje Java 6. Variables, declaraciones y asignaciones 7. Tipos de referencia usados en Java 8. Construcción e Inicialización de Objetos 9. Asignación de referencias
  • 37. Actividad 3: Identificadores, palabras clave y tipos Tipos de referencia usados en Java Como hemos indicado, hay ocho tipos de datos primitivos en Java: boolean, char, byte, short, int, long, float y double. El resto de los tipos hacen referencia a objetos en lugar de a datos primitivos. Las variables que hacen referencia a objetos se denominan variables de referencia. Por ejemplo, puede definir una clase MyDate: public class MyDate { private int day = 1; private int month = 1; private int year = 2000; public MyDate(int day, int month, int year) { ... } public String toString() { ... } } La variable today contiene una referencia al objeto MyDate.
  • 38. Actividad 3: Identificadores, palabras clave y tipos Tipos de referencia usados en Java Como hemos indicado, hay ocho tipos de datos primitivos en Java: boolean, char, byte, short, int, long, float y double. El resto de los tipos hacen referencia a objetos en lugar de a datos primitivos. Las variables que hacen referencia a objetos se denominan variables de referencia. Por ejemplo, puede definir una clase MyDate: En el código siguiente se muestra un ejemplo de uso de MyDate: public class TestMyDate { public static void main(String[] args) { MyDate today = new MyDate(22, 7, 1964); } } La variable today contiene una referencia al objeto MyDate.
  • 39. Actividad 3: Identificadores, palabras clave y tipos 1. Comentarios 2. Signos de punto y coma, bloques y espacio en blanco 3. Identificadores 4. Palabras clave en programación Java 5. Tipos básicos del lenguaje Java 6. Variables, declaraciones y asignaciones 7. Tipos de referencia usados en Java 8. Construcción e Inicialización de Objetos 9. Asignación de referencias
  • 40. Actividad 3: Identificadores, palabras clave y tipos Construcción e inicialización de objetos Ya hemos visto cómo ejecutar una llamada a new Xyz() a fin de asignar espacio para un objeto nuevo. Ahora veremos cómo colocar argumentos entre los paréntesis, por ejemplo new MyDate(22, 7, 1964). El uso de la palabra clave new produce el siguiente resultado: 1. En primer lugar se asigna e inicializa el espacio del nuevo objeto como 0 o vacío (null). En programación Java, esta fase es indivisible para garantizar que no habrá objetos que contengan valores aleatorios. 2. En segundo lugar se realiza cualquier inicialización explícita. 3. En tercer lugar se ejecuta un constructor, que es un método especial. Los argumentos del paréntesis pasados a new se pasan al constructor(22, 7, 1964). 4. Por último, el valor resultante de la operación new es una referencia al nuevo objeto en el espacio de memoria dinámica. Esta referencia se guarda en la variable de referencia.
  • 41. Actividad 3: Identificadores, palabras clave y tipos Asignación y organización de la memoria En el cuerpo de los métodos, la declaración siguiente asigna espacio de almacenamiento únicamente para la referencia mostrada en la Figura 3-1: MyDate my_birth = new MyDate(22, 7, 1964); my_birth ???? Figura 3-1 Declaración de la referencia al objeto La palabra clave new del ejemplo siguiente implica la asignación e inicialización del espacio de almacenamiento, como se ilustra en la Figura 3-2.
  • 42. Actividad 3: Identificadores, palabras clave y tipos Inicialización explícita de los atributos Si introduce expresiones de asignación sencillas en las declaraciones de miembros, puede inicializar los miembros de forma explícita durante la construcción del objeto. Como puede verse en la Figura 3-3, los tres atributos de la clase MyDate del ejemplo se han inicializado de forma expresa:
  • 43. Actividad 3: Identificadores, palabras clave y tipos Ejecución del constructor La parte final de la inicialización de un objeto nuevo es llamar al constructor. Éste permite sobrescribir la inicialización predeterminada. Es posible realizar cálculos, así como pasar argumentos al proceso de construcción para que el código que solicita la construcción del nuevo objeto pueda controlar el objeto creado. En el ejemplo de la Figura 3-4 puede verse la llamada al constructor:
  • 44. Actividad 3: Identificadores, palabras clave y tipos Asignación de una variable Asignación con la que se establece la variable de referencia my_birth de forma que haga referencia al objeto recién creado, como se muestra en la Figura 3-5.
  • 45. Actividad 3: Identificadores, palabras clave y tipos La historia no acaba aquí En realidad, construir e inicializar objetos es más complejo de lo que aquí se explica. El tema se trata con mayor profundidad en el Adtividad 6.
  • 46. Actividad 3: Identificadores, palabras clave y tipos 1. Comentarios 2. Signos de punto y coma, bloques y espacio en blanco 3. Identificadores 4. Palabras clave en programación Java 5. Tipos básicos del lenguaje Java 6. Variables, declaraciones y asignaciones 7. Tipos de referencia usados en Java 8. Construcción e Inicialización de Objetos 9. Asignación de referencias
  • 47. Actividad 3: Identificadores, palabras clave y tipos Asignación de referencias En programación Java, una variable declarada con un tipo de clase se conoce como tipo de referencia, porque hace referencia a un tipo no primitivo. Esto tiene algunas implicaciones en cuanto al significado de la asignación. Observe ese fragmento de código: int x = 7; int y = x; MyDate s = new MyDate(22, 7, 1964); MyDate t = s; Se han creado cuatro variables: dos con tipos primitivos int y otras dos que hacen referencia al objeto MyDate. El valor de x es 7 y ese valor se copia en y. Tanto x como y son variables independientes y los cambios que se realicen en una de ellas no afectarán a la otra.
  • 48. Actividad 3: Identificadores, palabras clave y tipos Asignación de referencias En el caso de las variables s y t, sólo existe el objeto MyDate, que contiene la fecha del 22 de julio de 1964. Tanto s como t se refieren al mismo objeto, como se observa en la Figura 3-6.
  • 49. Actividad 3: Identificadores, palabras clave y tipos Asignación de referencias Si se reasigna la variable t, se crea el nuevo objeto MyDate (con el valor 22 de diciembre de1964) y t hace referencia a este nuevo objeto, como se muestra en la Figura 3-7. El código aparecería como:
  • 50. Actividad 3: Identificadores, palabras clave y tipos Paso por valor El lenguaje Java pasa los argumentos únicamente por valor, es decir, no se puede cambiar el valor del argumento del método que hace la llamada desde el método que recibe la llamada. No obstante, cuando se pasa una instancia de un objeto en forma de argumento a un método, el valor del argumento no es el objeto en sí, sino una referencia al objeto. Es posible cambiar el contenido de ese objeto en el método que recibe la llamada, pero no en la referencia al objeto. Para muchos, esto parece una operación de paso por referencia y su comportamiento tiene cosas en común con el del paso por referencia. Sin embargo, no es exactamente así por dos razones. La primera es que la capacidad para cambiar el elemento pasado a un método sólo se aplica a los objetos, no a los valores de tipos primitivos. La segunda es el que el valor asociado a una variable de tipo objeto es la referencia al objeto y no el objeto en sí. Ésta es una distinción importante en otros aspectos y, si se entiende con claridad, explica perfectamente la idea de que el lenguaje Java pasa los argumentos por valor.
  • 51. Actividad 3: Identificadores, palabras clave y tipos Paso por valor El siguiente ejemplo de código ilustra este concepto: public class PassTest { // Métodos para cambiar los valores actuales public static void changeInt(int value) { value = 55; } public static void changeObjectRef(MyDate ref) { ref = new MyDate(1, 1, 2000); } public static void changeObjectAttr(MyDate ref) { ref.setDay(4); } public static void main(String args[]) { MyDate date; int val; // Asigna el entero val = 11; // Intenta cambiarlo
  • 52. Actividad 3: Identificadores, palabras clave y tipos Paso por valor changeInt(val); // ¿Cuál es el valor actual? System.out.println("El valor entero es: " + val); // Asigna la fecha date = new MyDate(22, 7, 1964); // Intenta cambiarla changeObjectRef(date); // ¿Cuál es el valor actual? System.out.println("Mi fecha: " + date); // Ahora se cambia el atributo de día // mediante la referencia al objeto changeObjectAttr(date); // ¿Cuál es el valor actual? System.out.println("Mi fecha: " + date); } }
  • 53. Actividad 3: Identificadores, palabras clave y tipos Paso por valor La salida en pantalla de este código es la siguiente: java PassTest El valor entero es: 11 Mi fecha: 22-7-1964 Mi fecha: 4-7-1964 El método changeObjectRef no cambia el objeto MyDate, sino que es el método changeObjectAttr el que cambia el atributo de día (day) del objeto MyDate.
  • 54. Actividad 3: Identificadores, palabras clave y tipos Referencia this La palabra clave this se utiliza con dos fines: ● Resolver la ambigüedad entre las variables de instancia y los parámetros. ● Pasar el objeto actual como parámetro a otro método. El texto del Código 3-1 proporciona una definición de clase donde pueden verse estos usos. La clase MyDate declara variables de instancias, líneas 2–4. Uno de los parámetros destinados a uno de los constructores (líneas 6–10) también se denomina day. Por tanto, en ese contexto, la palabra this resuelve la ambigüedad (línea 7). El método addDays crea un nuevo objeto de fecha (línea 18). En esta llamada al constructor, el método utiliza la palabra this como argumento para hacer referencia al objeto actual.
  • 55. Actividad 3: Identificadores, palabras clave y tipos Código 3-1 Uso de la palabra clave this public class MyDate { private int day = 1; private int month = 1; private int year = 2000; public MyDate(int day, int month, int year) { This.day = day; this.month = month; this.year = year; } public MyDate(MyDate date) { this.day = date.day; this.month = date.month; this.year = date.year; }
  • 56. Actividad 3: Identificadores, palabras clave y tipos Código 3-1 Uso de la palabra clave this public MyDate addDays(int moreDays) { MyDate newDate = new MyDate(this); newDate.day = newDate.day + moreDays; // No implementado aún: código de búsqueda cíclica (wrap around)... return newDate; } public String toString() { return "" + day + "-" + month + "-" + year; } }
  • 57. Actividad 3: Identificadores, palabras clave y tipos Convenciones de codificación en el lenguaje Java Para escribir código en lenguaje Java se utilizan las siguientes convenciones: ● Paquetes: los nombres de paquetes se escriben en minúsculas. package transporte.objetos ● Clases: los nombres de clases deberían ser sustantivos escritos en letras mayúsculas y minúsculas, con la primera letra de cada palabra en ayúscula. class LibroContabilidad ● Interfaces: los nombres de interfaces siguen la mismas normas que los nombres de las clases. interface Contabilidad ● Métodos: los métodos deberían ser verbos escritos en letras mayúsculas y minúsculas, y con la inicial en minúscula. Dentro de cada nombre de método, las palabras se separan con letras en mayúsculas. Conviene limitar el uso de signos de subrayado. cuadrarLibro()
  • 58. Actividad 3: Identificadores, palabras clave y tipos Convenciones de codificación en el lenguaje Java ● Variables: deberían escribirse en mayúsculas y minúsculas, con la inicial en inúscula. Las palabras se separan mediante letras en mayúscula. Conviene limitar el uso de signos de subrayado y evitar el uso del signo de dólar ($) porque este carácter tiene un significado especial para las clases internas. clienteActual El nombre de las variables tiene que ser explicativo para que indique a cualquier lector el propósito de su uso. Trate de no utilizar nombres de un solo carácter salvo para variables temporales desechables (por ejemplo, i, j y k utilizadas como variables de control de bucles). ● Constantes: las constantes primitivas deben escribirse enteramente en mayúsculas y separando las palabras mediante signos de subrayado. Las constantes de objeto pueden utilizar una combinación de mayúsculas y minúsculas. TOTAL_NOMINA CANTIDAD_MAXIMA
  • 59. Actividad 3: Identificadores, palabras clave y tipos Convenciones de codificación en el lenguaje Java ● Estructuras de control: cuando las sentencias forman parte de una estructura de control del flujo, como es el caso de if-else o for, es preciso escribirlas entre llaves ({ }), aunque sean sentencias sencillas. if ( condición ) { sentencia1; } else { sentencia2; } ● Espacios: sólo debe colocarse una sentencia por línea y utilizar sangrías de dos o cuatro espacios para facilitar la lectura del código. El número de espacios puede variar en función de las convenciones de codificación utilizadas.
  • 60. Actividad 3: Identificadores, palabras clave y tipos Convenciones de codificación en el lenguaje Java ● Comentarios: utilice comentarios para explicar los segmentos de código que no resultan obvios. Debe utilizar el delimitador // para los comentarios normales y marcar las secciones de comentario de gran tamaño usando/* . . . */como delimitadores. Los comentarios de documentación se delimitan mediante los caracteres /** . . . */y sirven a javadoc como texto de entrada para generar la documentación HTML del código. // Comentario en una sola línea. /* Los comentarios pueden ser más largos y ocupar varias líneas. */ /** Comentario destinado a documentación. * @see la clase Another para más información. */
  • 61. Actividad 3: Identificadores, palabras clave y tipos Convenciones de codificación en el lenguaje Java Nota: La palabra @see es una etiqueta especial de javadoc que produce el efecto de un vínculo véase también y hace referencia a una clase o un método. Para obtener más información sobre javadoc, consulte la definición del sistema de documentación explicada en el documento The Design of Distributed Hyperlinked Programming Documentation, cuya autora es Lisa Friendly. Puede encontrarlo en la siguiente dirección: http://java.sun.com/docs/javadoc-paper.html Asimismo, si precisa más información sobre las convenciones de codificación del lenguaje Java de Sun, consulte la página web siguiente: http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html