Docstoc

20101029-Polymorphis.. - Computer Science and Engineering

Document Sample
20101029-Polymorphis.. - Computer Science and Engineering Powered By Docstoc
					CSE115: Introduction to
 Computer Science I

      Dr. Carl Alphonce
          219 Bell Hall
 Office hours: M-F 11:00-11:50

         645-4739
   alphonce@buffalo.edu
               State systems

• State-based system:
  – system’s behavior based on its current
    state


• Many systems are state-based:
  – Cable/Satellite TV box
  – Wrist-watch
  – Cell phone interface
State Diagram
      push button




OFF                 ON




      push button
State Pattern example
            Polymorphism

• Behavior determined by method of
  object, because…

• it’s the object that responds:

  – the type of the object determines response

  – the type of the reference to object doesn’t
   Polymorphism

declared type of variable



     a supertype of



  actual type of object
Proxy Pattern Polymorphism
  Polymorphism
(in proxy pattern)
        context



delegates method call to



     concrete tool
State Pattern delegation
      Delegation in State code

public class DeskLamp {
    private IState _state;
    public DeskLamp() {
        _state = new Off();
    }
    public void pushButton() {
        _state.pushButton(this);
    }
    public void setState(IState s) {
        _state = s;
    }
}

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:0
posted:5/19/2013
language:Unknown
pages:11
yan tingting yan tingting
About