My question is why do we use abstract class when we can use a normal class? We can define the class methods with the empty body, which is the only difference with the abstract class is that its methods do not have a body, but the normal class methods have a body that is empty, which with this normal class we can also use polymorphism facilities. In this case, what is the need for abstract class?
class NormalClass{
void m1(){
}
}
//instead of:
abstract class AC{
void m1();
}