viernes, 30 de julio de 2010

Identificadores


Comenzaremos con identificadores, pero ¿Qué es un identificador?.

En el desarrollo de una aplicación java nosotros nos veremos en la necesidad de declarar clases, métodos, atributos , variables locales, enumeraciones y un montón de cosas para que nuestro programa corra de manera eficiente.

 Cuando la mayoría de nosotros comenzamos a programar trabajábamos siempre con nuestras queridas y adoradas variables "x" y "y", pero ¿Podemos usar nombres diferentes en nuestros programas?, pues claro que si!!!. Siempre y cuando cumplamos con algunas reglas que determinan que nombre es legal dentro de una aplicación java así que vamos a verlas:

Identificadores legales :

1.-Los identificadores legales dentro de un programa en java deben comenzar forzosamente con una letra, un signo de "$" ó un "_".

2.-Después del primer carácter nosotros podemos combinar el nombre con tanto letras como con números.

3.- No hay un número limite de caracteres de un identificador así que nosotros podremos escribir nombres de variables tan largos como queramos.

4.- No pueden contener espacios.

5.- No pueden pertenecer a las palabras reservadas en el lenguaje.

La declaración de identificadores debe cumplir con la siguiente expresión regular [\w$_]([\w\d$_]*).

Veamos un ejemplo :

public class _ {
    public void $(int _$){
        System.out.println(_$);
    }
    public static void main(String[] args) {
         int $9=800;
         int $h=$9;
         new _().$($h);
    }
}


Mencionado lo anterior les preguntare ¿El programa compilará o no?.

La respuesta es : si el programa compila sin ningún problema y dará la siguiente salida:

800

Vamos a analizar linea a linea el código:

Comentamos que los identificadores podían comenzar con un guion bajo, no hay ninguna regla que diga que no pueden tener solo un dígito.

public class _ {

El nombre del método es $ símbolo con el cual puede comenzar cualquier identificador y recibe como argumento una variable de tipo entero llamada _$ la cual cumple con las reglas mencionadas anteriormente:

    public void $(int _$){
        System.out.println(_$);
    }



Los identificadores no pueden comenzar por números, pero a partir del segundo carácter podrán tener tanto números como letras

    public static void main(String[] args) {
         int $9=800;
         int $h=$9;

Esta linea puede ser un poco confusa pero vamos a revisarla. Como vemos estamos creando un objeto de la clase guion bajo y no guardamos la referencia, solo estamos utilizando el objeto creado para acceder al método "$" y le estamos pasando como argumento la variable $h.

new _().$($h);
    }
}




Se que cuando desarrollamos aplicaciones no utilizamos nombres tan raros pero recuerden si quieren presentar el examen SCJP ellos no se tocarán el corazón y les preguntaran las cosas más raras y confusas posibles así que no esta mal que nos vallamos acostumbrando desde ahora.Hasta el momento solo hemos visto identificadores que cumplen perfectamente bien con las reglas, pero no hemos visto identificadores inválidos, veamos algunos ejemplos;


float 1_;
int @lex;
double algo#;
int :);
int long;

Por último veamos las palabras reservadas del lenguaje java para no cometer el error de utilizarlas en la declaración de algún identificador, más adelante daré una explicación detallada de estas:

abstract  default  if          private       this
boolean   do       implements  protected     throw
break     double   import      public        throws
byte      else     instanceof  return        transient
case      extends  int         short         try
catch     final    interface   static        void
char      finally  long        strictfp      volatile
class     float    native      super         while
const     for      new         switch
continue  goto     package     synchronized




 Este fue mi primer aporte espero les aya sido de utilidad en su camino a ser un SCJP.








No hay comentarios:

Publicar un comentario