Protected field alternatives in Java? -


i have code using protected field in super class. how can avoid it, because think field should private?

 /** "abstract builder" */  abstract class pizzabuilder {     protected pizza pizza;      public pizza getpizza() { return pizza; }     public void createnewpizzaproduct() { pizza = new pizza(); }      public abstract void builddough();     public abstract void buildsauce();     public abstract void buildtopping();  }   /** "concretebuilder" */  class hawaiianpizzabuilder extends pizzabuilder {     public void builddough()   { pizza.setdough("cross"); }     public void buildsauce()   { pizza.setsauce("mild"); }     public void buildtopping() { pizza.settopping("ham+pineapple"); }  }   /** "concretebuilder" */  class spicypizzabuilder extends pizzabuilder {     public void builddough()   { pizza.setdough("pan baked"); }     public void buildsauce()   { pizza.setsauce("hot"); }     public void buildtopping() { pizza.settopping("pepperoni+salami"); }  } 

use getpizza() in child classes.

so :

 public void builddough()   { pizza.setdough("cross"); } 

becomes

public void builddough()   { getpizza().setdough("cross"); } 

Comments

Popular posts from this blog

c# - SVN Error : "svnadmin: E205000: Too many arguments" -

c++ - Using OpenSSL in a multi-threaded application -

All overlapping substrings matching a java regex -