Recently, at an interview, I was asked the following question: "Of what use would be an abstract class which has only one non-abstract method?"
I couldn't quite figure out the answer to this one. Any pointers in this direction would be welcome.
posted 10 years ago
Here's my guess: Suppose the class in question was a class named A. Suppose A extended another abstract class S, or implemented an interface I, but A did not provide an implementation for any methods in the superclass S or interface I, then the class A must be declared abstract. The fact that it provides a single non-abstract method is irrelevant, I think. On the other hand, a class A with no behaviour (methods) at all would be rather pointless.