Escritura de Programas y Aplicaciones Java
Codificación del texto:
Todos los códigos fuentes Java se escriben en documentos de texto con extensión .java. Al ser un lenguaje para Internet, la codificación de texto debía permitir a todos los
programadores de cualquier idioma escribir ese código. Eso significa que Java es compatible con la codificación Unicode.
En la práctica significa que los programadores que usen lenguajes distintos del inglés no tendrán problemas para escribir símbolos de su idioma. Y esto se puede extender para nombres de clase, variables, etc.
La codificación Unicode2 usa 16 bits (2 bytes por carácter) e incluye la mayoría de los códigos del mundo.
Notas y Conocimientos Previos
Los archivos con código fuente en Java deben guardarse con la extensión .java. Como se ha comentado cualquier editor de texto basta para crearle. Algunos detalles y recomendaciones importantes son:
- En java (como en C) hay diferencia entre mayúsculas y minúsculas.
- Cada línea de código debe terminar con ; (punto y coma).
- Los comentarios; si son de una línea debe comenzar con “//” y si ocupan más de una línea deben comenzar con “/*” y terminar con “*/”.
/* Comentario
de varias líneas */
//Comentario de una línea.
{
...código dentro del bloque
}
código fuera del bloque
El primer programa en Java
public class mi_primera_app
{
public static void main(String[] args)
{
System.out.println(“Hola..!!..¡Bienvenido Mi primer programa!”);
}
}
Este código escribe “Hola..!!..¡Bienvenido Mi primer programa!” en la pantalla. El archivo debería llamarse mi_primera_app ya que esa es la clase pública. El resto define el método main que es el que se ejecutará al lanzarse la aplicación. Ese método utiliza la instrucción que escribe en pantalla.
Otros Datos Importantes En la Compilación de Programas.
Los comentarios que comienzan con los códigos /** se llaman comentarios de documento y serán utilizados por los programas de generación de documentación javadoc.
Los comentarios javadoc comienzan con el símbolo /** y terminan con */ Cada línea javadoc se inicia con un símbolo de asterisco. Dentro se puede incluir cualquier texto.
Incluso se pueden utilizar códigos HTML para que al generar la documentación se tenga en cuenta el código HTML indicado.
En el código javadoc se pueden usar etiquetas especiales, las cuales comienzan con el símbolo @. Pueden ser:
- @author. Tras esa palabra se indica el autor del documento.
- @version. Tras lo cual sigue el número de versión de la aplicación
- @see. Tras esta palabra se indica una referencia a otro código Java relacionado con éste.
- @since. Indica desde cuándo esta disponible este código
- @deprecated. Palabra a la que no sigue ningún otro texto en la línea y que indica que esta clase o método esta obsoleta u obsoleto.
- @throws. Indica las excepciones que pueden lanzarse en ese código.
- @param. Palabra a la que le sigue texto qué describe a los parámetros que requiere el código para su utilización (el código en este caso es un método de clase). Cada parámetro se coloca en una etiqueta @param distinta, por lo que puede haber varios @param para el mismo método.
- @return. Tras esta palabra se describe los valores que devuelve el código (el código en este caso es un método de clase).
El código javadoc hay que colocarle en tres sitios distintos dentro del código java de la aplicación:
1> Al principio del código de la clase (antes de cualquier código Java). En esta zona se colocan comentarios generales sobre la clase o interfaz que se crea mediante el código Java. Dentro de estos comentarios se pueden utilizar las etiquetas: @author, @version, @see, @since y @deprecated.
2> Delante de cada método. Los métodos describen las cosas que puede realizar una clase. Delante de cada método los comentarios javadoc se usan para describir al método en concreto. Además de los comentarios, en esta zonase pueden incluir las etiquetas: @see, @param, @exception, @return, @since y @deprecated.
3> Delante de cada atributo. Se describe para qué sirve cada atributo en cada clase. Puede poseer las etiquetas: @since y @deprecated.
Ejemplo:
/** Esto es un comentario para probar el javadoc
* este texto aparecerá en el archivo HTML generado.
* <strong>Realizado en agosto 2003</strong>
*
* @author Jorge Sánchez
* @version 1.0
*/
public class prueba1 {
//Este comentario no aparecerá en el javadoc
/** Este método contiene el código ejecutable de la clase
*
* @param args Lista de argumentos de la línea de comandos
* @return void
*/
public static void main(String args[]){
System.out.println("¡Mi segundo programa! ");
}
}
Tras ejecutar la aplicación javadoc, aparece como resultado la página web de la página siguiente.
Variables
Introducción
Las variables son los contenedores de los datos que utiliza un programa. Cada variable ocupa un espacio en la memoria RAM del ordenador para almacenar un dato determinado.
Las variables tienen un nombre (un identificador) que sólo puede contener letras, números y el carácter de subrayado (también vale el símbolo $). El nombre puede contener cualquier carácter Unicode.
Declaración de variables
Antes de poder utilizar una variable, ésta se debe declarar. Lo cual se debe hacer de esta forma:
tipo nombrevariable;
Donde tipo es el tipo de datos que almacenará la variable (texto, números enteros,...) y nombrevariable es el nombre con el que se conocerá la variable.
Ejemplos:
int dias;
boolean decision;
También se puede hacer que la variable tome un valor inicial al declarar:
int dias=365;
Y también se puede declarar más de una variable a la vez:
int dias=365, anio=23, semanas;
Al declarar una variable se puede incluso utilizar una expresión:
int a=13, b=18;
int c=a+b;
Esas dos palabras sinónimas, hacen referencia a la duración de una variable. En el ejemplo:
{
int x=12;
}
System.out.println(x); //Error
Enteros
Los tipos byte, short, int y long sirven para almacenar datos enteros. Los enteros son números sin decimales. Se pueden asignar enteros normales o enteros octales y hexadecimales. Los octales se indican anteponiendo un cero al número, los hexadecimales anteponiendo 0x.
int numero=16; //16 decimal
numero=020; //20 octal=16 decimal
numero=0x14; //10 hexadecimal=16 decimal
Normalmente un número literal se entiende que es de tipo int salvo si al final se le coloca la letra L; se entenderá entonces que es de tipo long.
No se acepta en general asignar variables de distinto tipo. Sí se pueden asignar valores de variables enteras a variables enteras de un tipo superior (por ejemplo asignar un valor int a una variable long). Pero al revés no se puede:
int i=12;
byte b=i; //error de compilación
La solución es hacer un cast. Esta operación permite convertir valores de un tipo a otro.
Se usa así:
int i=12;
byte b=(byte) i; //No hay problema por el (cast).
Hay que tener en cuenta en estos cast que si el valor asignado sobrepasa el rango del elemento, el valor convertido no tendrá ningún sentido:
int i=1200;
byte b=(byte) i; //El valor de b no tiene sentido.
Números en Coma Flotante
Los decimales se almacenan en los tipos float y double. Se les llama de coma flotante por como son almacenados por el ordenador. Los decimales no son almacenados de forma exacta por eso siempre hay un posible error. En los decimales de coma flotante se habla, por tanto de precisión. Es mucho más preciso el tipo double que el tipo float.
A un valor literal (como 1.5 por ejemplo), se le puede indicar con una f al final del número que es float (1.5f por ejemplo) o una d para indicar que es double. Si no se indica nada, un número literal siempre se entiende que es double, por lo que al usar tipos float hay que convertir los literales.
Las valores decimales se pueden representar en notación decimal: 1.345E+3 significaría 1.345·103 o lo que es lo mismo 1345.
Booleanos
Los valores booleanos (o lógicos) sirven para indicar si algo es verdadero (true) o falso (false). En C se puede utilizar cualquier valor lógico como si fuera un número; así verdadero es el valor -1 y falso el 0. Eso no es posible en Java.
Si a un valor booleano no se le da un valor inicial, se toma como valor inicial el valor false. Por otro lado, a diferencia del lenguaje C, no se pueden en Java asignar números a una variable booleana (en C, el valor false se asocia al número 0, y cualquier valor distinto de cero se asocia a true).
Caracteres
Los valores de tipo carácter sirven para almacenar símbolos de escritura (en Java se puede almacenar cualquier código Unicode). Los valores Unicode son los que Java utiliza para los caracteres. Ejemplo:
char letra;
letra=’C’; //Los caracteres van entre comillas
letra=67; //El código Unicode de la C es el 67. Esta línea
//hace lo mismo que la anterior
También hay una serie de caracteres especiales que van precedidos por el símbolo \, son estos:
Otros caracteres especiales tenemos:
Conversión entre tipos (casting)
Hay veces en las que se deseará realizar algo como:
int a;byte b=12;
a=b;
La duda está en si esto se puede realizar. La respuesta es que sí. Sí porque un dato byte es más pequeño que uno int y Java le convertirá de forma implícita. Sin embargo en:
int a=1;
byte b;
b=a;
El compilador devolverá error aunque el número 1 sea válido para un dato byte. Para ello hay que hacer un casting. Eso significa poner el tipo deseado entre paréntesis delante de la expresión.
int a=1;
byte b;
b= (byte) a; //No da error
En el siguiente ejemplo:
byte n1=100, n2=100, n3;
n3= n1 * n2 /100;
Aunque el resultado es 100, y ese resultado es válido para un tipo byte; lo que ocurrirá en realidad es que ocurrirá un error. Eso es debido a que primero multiplica 100 * 100 y como eso da 10000, no tiene más remedio el compilador que pasarlo a entero y así quedará aunque se vuelva a dividir. La solución correcta sería:
n3 = (byte) (n1 * n2 / 100);
PRÓXIMOS TEMAS A PUBLICAR:




No hay comentarios:
Publicar un comentario