A blueprint is a guide used for making something. In the real world, blueprints are usually plans for making buildings. You can create multiple buildings using the same blueprint with each building being unique but having the same basic architecture. For instance, a blueprint might specify the number of rooms a house should have. While each house built using that blueprint will have the same number of rooms, one house might have rooms with white walls and another might have rooms with blue walls, making them unique entities, but still related through the blueprint.
Classes can be thought of as a blueprint with which you can create an object. An object is an instance of a class which is the actual thing to be used in our programs. In the same way, a single house is an instance of the blueprint above. The blueprint is just a piece of paper while the house itself is the physical representation of that blueprint and can actually be lived in.
The blueprint will specify the properties the object would have and will also specify the operations/methods which the object can use. The properties and methods of a class are known as the members of that class.
As always, learning by example is the best way to learn, so let’s imagine how we can make a class that can be used to create a person.