I understand that abstract methods forces the class which inherit it to implement those methods or the instances for these child classes can't be created. So abstract methods are templates for the child class from the parent class. But I dont understand how does the actual definition of abstraction which is hiding features to reduce complexity actually getting used here?
Whats even more confusing over here is that ,is it in abstract mathod ,the body of the method should have some statement or should it be only been given as "pass" because in some websites it says only pass and other websites ,some print statements are given inside the abstract method.
If it is a template for the base class then is there any harm in writing what exactly should the template implement?