Leite Adulterado? Java Nele!!
Vc não quer mais que adulterem o leite!? Há uma solução java, veja:
// Altere seu código dePublic class Leite{
private Set ingredientes;
public Set getIngredientes() {
return this.ingredientes;
{}
// Para esse novo código
public final class Leite {
//Leite é leite, não existe esse negocio de
//LeiteComSoda extends Leite/**
* Obs.: bem que meu professor de JAVA falou
* que esse negocio de heranca é uma droga
* tire todo esse código de ingredientes
* você quer é leite e não uma mistura de agua,
* agua oxigenada, soda caustica, etc …
*/
}// Não se esqueça de fazer tambem:
public class final class Leite implements NaoLetalAoSerHumano{
…
}// Agora veja um código malicioso de laticínio que
// funcionava na primeira versãopublic class LeiteFactory {
Leite getLeite() {
Leite leite = new Leite();
Set ingredientes = leite.getIngredientes();
ingredientes.add(new Agua());
ingredientes.add(new SodaCaustica());
ingredientes.add(new AguaOxigenada());
}}