Custom sharing rules are used to allow subordinates to perform actions on their superiors’ records. If you are a user at a higher level in the hierarchy, you can grant permissions to your subordinates to access your records in a module. This can be done even when the module is made Private.
How is it different from the Public mode?
The Public mode allows everybody to access your records. The idea behind advanced or custom sharing rules is to provide selective access to groups and roles, and even subordinates.