Real-world objects share two characteristics:
They all have 1) state and 2) behavior. Dogs have state (name, color, breed, hungry) and behavior (barking, fetching, wagging tail). Bicycles also have state (current gear, current pedal cadence, current speed) and behavior
(changing gear, changing pedal cadence, applying brakes)
- State: Every object, at any given point of time would have to have a set of attributes defining its State.
- Behavior: Every object based on its state and optionally identity will have particular behavior.