Contenido de certificación
Buscar
Social
Ofertas laborales ES
« GregorianCalendar en Java | Main | Preguntas sobre fechas »
miércoles
abr022014

Pregunta sobre referencias

¿Cuál es la salida del siguiente programa y por qué? NOTA: no vale hacer uso de IDE.

package test;

import java.util.ArrayList;
import java.util.List;

/**
 * Probando referencias en objetos y en string's
 * 
 * @author Jaime Carmona Loeches
 * 
 */
public class Pruebas {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		List lista1 = new ArrayList();
		lista1.add(new Objeto(1, 1));

		List lista2 = new ArrayList();
		lista2.add("1");

		for (Objeto objeto : lista1) {
			objeto.setA(2);
			objeto.setB(2);
		}

		for (String objeto : lista2) {
			objeto = "2";
		}

		for (Objeto objeto : lista1) {
			System.out.println(objeto.toString());
		}

		for (String objeto : lista2) {
			System.out.println(objeto.toString());
		}
	}

}

class Objeto {
	int a = 0;
	int b = 0;

	public Objeto(int a, int b) {
		super();
		this.a = a;
		this.b = b;
	}

	public int getA() {
		return a;
	}

	public void setA(int a) {
		this.a = a;
	}

	public int getB() {
		return b;
	}

	public void setB(int b) {
		this.b = b;
	}

	@Override
	public String toString() {
		return "Objeto [a=" + a + ", b=" + b + "]";
	}

}

Reader Comments

There are no comments for this journal entry. To create a new comment, use the form below.

PostPost a New Comment

Enter your information below to add a new comment.

My response is on my own website »
Author Email (optional):
Author URL (optional):
Post:
 
Some HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>