Four O-O Characteristics (from White Paper)
Encapsulation - implements information hiding and modularity (abstraction)
Polymorphism - the same message sent to different objects results in behavior that's dependent on the nature of the object receiving the message
Inheritance - new classes and behavior are based on existing classes to obtain code re-use and organization
Dynamic binding - objects could come from anywhere, possibly across the network. You need to be able to send messages to objects without having to know their specific type at the time you write your code. Dynamic binding provides maximum flexibility whi