2. Elementary Concept of Objects and Classes
Modelling entities and their behaviour by objects, a class as a specification for objects and as an object factory, computation as message passing/method calls between objects (many examples should be done to illustrate this). Objects encapsulate state (attributes) and have behaviour (methods). Class as a user defined data type.
A class may be regarded as a blueprint to create objects. It may be viewed as a factory that produces similar objects. A class may also be considered as a new data type created by the user, that has its own functionality.