Object versus class
If you remember from the previous chapter, we have two approaches for constructing objects. One approach is prototype-based and the other is class-based.
In the prototype-based approach, we construct an object either empty (without any attribute or behavior), or we clone it from an existing object. In this context, instance and object mean the same thing. So, the prototype-based approach can be read as the object-based approach; an approach that begins from empty objects instead of classes.
In the class-based approach, we cannot construct an object without having a blueprint that is often called a class. So, we should start from a class. And then, we can instantiate an object from it. In the previous chapter, we explained the implicit encapsulation technique that defines a class as a set of declarations put in a header file. We also gave some examples showing how this works in C.
Now, as part of this section, we want to talk more about the...