Why can abstract methods only be declared in abstract classes?

Jona picture Jona · Mar 4, 2014 · Viewed 22.5k times · Source

I understand that in abstract classes methods be both abstract, or not. But why can I not create an abstract method in a "normal", non-abstract class?

Thanks in advance for any explanation!

Answer

Warlord picture Warlord · Mar 4, 2014

Abstract method basically says, that there is no implementation of the method and it needs to be implemented in a subclass. However if you had an abstract method in a non-abstract class, you could instantiate the class and get an object, that would have an unimplemented method, which you would be unable to call.