Cosas básicas que [quizá] no sabías sobre Java (I)

Este es el comienzo de una serie de posts sobre conceptos básicos del lenguaje Java. Nos centraremos en Java Standard Edition desde la versión 5.0 en adelante. No es un curso de programación, tampoco es un listado exhaustivo, es más bien un compendio de curiosidades que se nos pueden haber olvidado, o quizá nunca supimos. Comencemos.

Inicialización de atributos y variables

Siempre nos han dicho que es una buena práctica inicializar las variables antes de usarlas. De hecho, lo es, pero no siempre es necesario hacerlo. El compilador de Java inicializa los atributos de una clase, que no han sido previamente inicializados, a su valor por defecto.

Estos son los valores que pone por defecto (tipo/clase: valor por defecto):

  • byte: 0
  • short: 0
  • int: 0
  • long: 0L
  • float: 0.0f
  • double: 0.0d
  • char:‘u0000’
  • boolean: false
  • String (o cualquier objeto): null

Pero las variables locales (variables declaradas dentro de un método) nunca son inicializadas por el compilador a sus valores por defecto.

Restricciones de nombrado

Un nombre de variable/clase puede ser cualquier identificador (salvo palabras reservadas y literales) compuesto por una secuencia «ilimitada» (entendiendo ilimitada como que el lenguaje de programación no pone una restricción explícita) de letras y números Unicode, comenzando por cualquiera de las siguientes:

  • una letra
  • el símbolo del dolar («$«)
  • un guión bajo («_»)

Sin embargo las normas de convención Java no recomiendan usar $, ni _ para comienzos, y el _ usarlo exclusivamente para separar palabras en nombres de constantes.

Palabras reservadas y literales

Si te pregunto ¿cuál de estas palabras son palabras reservadas de Java?

  • if
  • true
  • for
  • goto
  • select
  • const

Sin hacer trampas ¿con cuál de las siguientes opciones te quedarías?
a) goto, select, const
b) if, for, goto, const
c) if, true, for

Probablemente, si programas en java, haciendo memoria sobre las palabras reservadas que usas, tendrás una solución en mente. No te voy a dar la respuesta directamente, sino que voy a dejar que la compruebes tú mismo. También daremos la solución en el próximo post.

Ahora que sabes la respuesta correcta, proseguimos. Existen algunas confusiones con respecto a qué es una palabra reservada y, por esto, también existe confusión sobre qué es un literal. Lo primero que hay que saber es que son excluyentes: un literal no es una palabra reservada, ni una palabra reservada es un literal.

En el próximo post hablaremos de curiosidades sobre palabras reservadas y literales, y otros conceptos interesantes.

Accesos directos

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *