Saltar la navegación

3.- Los tipos de datos.

Caso práctico

Imagen en la que se aprecia una mano introduciendo datos por un teclado.
Stockbyte DVD-CD (CC BY-NC)

María ya ha hecho sus pinitos como programadora. Ahora mismo está ayudando a Juan con las variables y le ha surgido un problema.
—El lenguaje se está comportando de una forma extraña, quiero llamar a una variable final y no me deja —Le comenta a Juan.
—Claro, eso es porque final es una palabra reservada y ya hemos visto que no la puedes utilizar para nombrar variables —le responde Juan.
—¡Vaya! —exclama María, —¡es verdad!, ¿y qué otros requisitos debo tener en cuenta a la hora de declarar las variables?
—Pues lo importante es saber qué tipo de información hay que guardar, para poder asignarles el tipo de dato adecuado. ¿Tienes un momento y te lo cuento? — le dice Juan.

En los lenguajes fuertemente tipados, a todo dato (constante, variable o expresión) le corresponde un tipo que es conocido antes de que se ejecute el programa.

El tipo limita el valor de la variable o expresión, las operaciones que se pueden hacer sobre esos valores, y el significado de esas operaciones. Esto es así porque un tipo de dato no es más que una especificación de los valores que son válidos para esa variable , y de las operaciones que se pueden realizar con ellos.
Debido a que el tipo de dato de una variable se conoce durante la revisión que hace el compilador para detectar errores, o sea en tiempo de compilación, esta labor es mucho más fácil, ya que no hay que esperar a que se ejecute el programa para saber qué valores va a contener esa variable. Esto se consigue con un control muy exhaustivo de los tipos de datos que se utilizan, lo cual tiene sus ventajas e inconvenientes, por ejemplo cuando se intenta asignar un valor de un tipo, a una variable de otro tipo. Sin embargo, en Java, puede haber conversión entre ciertos tipos de datos, como veremos posteriormente.
Ahora no es el momento de entrar en detalle sobre la conversión de tipos, pero sí debemos conocer con exactitud de qué tipos de datos dispone el lenguaje Java. Ya hemos visto que las variables, según la información que contienen, se pueden dividir en variables de tipos primitivos y variables referencia. Pero ¿qué es un tipo de dato primitivo? ¿Y un tipo referencia? Esto es lo que vamos a ver a continuación. Los tipos de datos en Java se dividen principalmente en dos categorías:

  • Tipos de datos sencillos o primitivos. Representan valores simples que vienen predefinidos en el lenguaje; contienen valores únicos, como por ejemplo un carácter o un número.
  • Tipos de datos referencia. Se definen con un nombre o referencia (puntero) que contiene la dirección en memoria de un valor o grupo de valores. Dentro de este tipo tenemos por ejemplo los vectores o arrays, que son una serie de elementos del mismo tipo, o las clases, que son los modelos o plantillas a partir de los cuales se crean los objetos.

En el siguiente apartado vamos a ver con detalle los diferentes tipos de datos que se engloban dentro de estas dos categorías.

Un lenguaje de programación es fuertemente tipado cuando una variable de un tipo de dato concreto, no se puede usar como si fuera una variable de otro tipo a menos que se haga una conversión de tipo. Si la variable es de tipo entero, por ejemplo, no podré asignarle un valor real.

Autoevaluación

Pregunta

El tipado fuerte de datos supone que:

Respuestas

A todo dato le corresponde un tipo que es conocido antes de que se ejecute el programa.

El lenguaje hace un control muy exhaustivo de los tipos de datos.

El compilador puede optimizar mejor el tratamiento de los tipos de datos.

Todas las anteriores son correctas.

Retroalimentación