Introduction
Self reference lets an object or function refer to itself. This helps when you want to work with the current item or repeat actions inside itself.
When you want a method inside a class to access or change the object's own data.
When a function needs to call itself to solve a problem step by step.
When you want to keep track of the current object in a group of objects.
When you want to build structures like linked lists where each part points to itself or others.