Instantiating an object is akin to creating a new instance of a class. This is done by calling the class itself as though it were a function, and this process yields a concrete object with all the defined attributes and methods of that class.
In the original exercise, three objects are instantiated: one each for `Bear`, `Rabbit`, and `Octothorpe`.
To instantiate an object, you simply assign the class to a variable, like `my_bear = Bear()`. This creates an instance of the `Bear` class, which can then be used to call its `eats()` method, among others:
my_bear = Bear()
print(my_bear.eats())
# Outputs: 'berries'
Instantiating objects is vital because it allows you to create multiple individuals from the same class blueprint, each capable of performing methods and holding state independently from others.