Think more or google more.
- If your child classes have the common functionality then why you will override the method in every class? you can use the base class(which is abstract in this case) method.There comes the need of non-abtract(concrete as they called mostly) methods.
- while having abstract method there(as you know already i think), we can override according to our requirement.
- If you need all methods should be override in every child classes according to their requirement, then you can go for Interface.