Buenos días. Devuelve la propia instancia 'a'. Si haces alguna modificación en al utilizar el getter, se verá reflejada en 'a'. Por eso a veces es importante devolver una copia en los getter, si quieres proteger el campo:
Código:
private A a;
public A getA(){
return copy(a);
}
De esta forma protegemos el valor de la variable. A esto se le denomina hacer una copia defensiva. Otra opción sería devolver un objeto no modificable de la instancia. Aquí tienes más información:
http://stackoverflow.com/questions/9...effective-java