AjLearning
AjLearning 0.1    





Introducción a Java - Strings

Curso Introducción a Java

    Anterior     Siguiente

En Java, se manejan tipos primitivos, que son manipulados directamente por la máquina virtual, y objetos de alguna clase. En el paquete java.lang, que siempre está importado en cada programa nuestro, encontramos las clases de base del sistema. Una es la clase java.lang.String.

Los "strings" del lenguaje, las variables de texto, en realidad son objetos, no son tipos primitivos como en otros lenguajes. Tampoco son arreglos de caracteres, como en C/C++. Son objetos de primera clase de Java, y como tal son manipulados. Todos los literales de texto, como "abc", son objetos de esta clase.

Los objetos String, son constantes. Es decir, durante su vida, no son modificados, son inmutables. Esta es una característica implementada para poder compartirlos entre
variables. Es decir:

String a = "abc"; String b = a; hará que las variables a y b referencien el mismo objeto, y que por más que operemos sobre a, nunca se alterará el valor de ese objeto. Si ejecutamos:
a.toUpperString(); en realidad estaremos creando un nuevo objeto String, y no alterando el original. La inmutabilidad de los objetos String es entonces una característica básica de los mismos, y permite que Java, la máquina virtual, y el compilador, efectúen optimizaciones sobre el uso de sus
instancias. Por ejemplo, en caso de:
String alfa = "abc"; String beta = "abc"; si el compilador trata de optimizar el código generado, seguramente asignará el mismo objeto a las dos variables. No importa que el texto sea compartido, no cambiará bajo ninguna circunstancia. A lo sumo, alguna variable cambiará su valor referenciado, pero el texto original, permanecerá invariable.

Programado por Angel J. Lopez www.ajlopez.com