Ver Mensaje Individual
  #2 (permalink)  
Antiguo 11/05/2010, 21:19
Avatar de chuidiang
chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 7 meses
Puntos: 454
Respuesta: no entiendo la creacion de objetos!

Efectivamente, no tiene utilidad, de hecho, es menos eficiente.

En ambos casos se crea un objeto String con ese contenido "adfs", las dos formas son totalmente equivalentes y hacen lo mismo.

La única diferencia es que el compilador es listo y si haces esto

Código:
String s = "adfs";
String p = "adfs";
el compilador es capaz de detectar que la cadena es la misma y sólo creará un objeto String con "adfs", de forma que s y p "comparten" el String único. Sin embargo, si haces

Código:
String s = new String ("adfs");
String p = new String ("adfs");
el compilador ya no hace lo de antes, estás creando dos objetos String con el mismo contenido, uno para cada uno. Puesto que un objeto String es inmutable (no puedes cambiarle el contenido), esta forma es menos eficiente por ocupar algo más de memoria y no tiene en principio ninguna ventaja especial.

Se bueno.
__________________
Apuntes Java
Wiki de Programación