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.

228<br />

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

}<br />

this.to = to;<br />

}<br />

public String getFrom() {<br />

return from;<br />

}<br />

public void setFrom(final String from) {<br />

this.from = from;<br />

}<br />

public String getBody() {<br />

return body;<br />

}<br />

public void setBody(final String body) {<br />

this.body = body;<br />

}<br />

Y esta es la clase que nos permite manipular y operar un e-mail.<br />

Vean cómo, sin esta clase, la anterior es inútil.<br />

public class MailService {<br />

public void enviarMail(final Mail mail) {<br />

…<br />

}<br />

public void reenviarMail(final Mail mail, final String destinatario) {<br />

…<br />

}<br />

Beneficios de la inmutabilidad<br />

Los objetos inmutables tienen varios beneficios: son fáciles de crear, probar y usar; son thread-safe, no<br />

requieren sincronización; no requieren ser copiados defensivamente cuando son atributos y se los devuelve<br />

en un método; son excelentes candidatos para estar en un Set o como claves de un Map; su invariante<br />

de clase se valida una sola vez al construirlos y nunca están en un estado inválido.<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!