23.02.2017 Views

Java

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

230<br />

12. Técnicas de diseño<br />

que son extremadamente difíciles de encontrar y arreglar. Sería más<br />

fácil si desde el principio el objeto fecha no pudiera ser modificado.<br />

Si queremos cambiar de fecha, simplemente creamos otra fecha,<br />

sin afectar al resto del código que depende<br />

como regla<br />

general, todos<br />

los objetos que<br />

creamos deberían<br />

ser inmutables<br />

de la fecha original. Esto es muy importante,<br />

especialmente en ambientes de muchos procesos<br />

en paralelo, como lo es una aplicación web, que<br />

atiende varios clientes simultáneamente. También<br />

al hacer los objetos inmutables nos protegemos<br />

de que al devolver un colaborador interno como<br />

respuesta de un método, no estemos expuestos<br />

a que accidentalmente un cliente modifique tal<br />

objeto y que esto nos afecte. Como regla general,<br />

deberíamos hacer que todos los objetos que<br />

creamos sean inmutables, a menos que sea realmente necesario que<br />

así no sea. Para lograr objetos inmutables en <strong>Java</strong> debemos utilizar<br />

el modificador final en los atributos e inicializarlos utilizando el<br />

constructor (o directamente en la definición de los atributos).<br />

public class Punto {<br />

private final double x;<br />

private final double y;<br />

public Point(final double x, final double y) {<br />

this.x = x;<br />

this.y = y;<br />

}<br />

public double x() {<br />

return x;<br />

}<br />

public double y() {<br />

return y;<br />

}<br />

}<br />

www.redusers.com<br />

www.FreeLibros.me

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!