now... we can start replacing the switch in Movie with PolyMorphism simple subclassing Movie to allow each kind of Movie to have its own getCharge will not work... as a Movie can change its class during its lifetime... We will use State pattern to solve this... requires 3 refactorings Replace Type Code with State/Strategy Move Method Replace Conditional with Polymorphism First, Replace type code with State step one is Self Encapsulate Field to make sure all uses of the type code go through accessors methods. We are working in Movie class...