An abstract class is a class which has no constructor and thus cannot be instantiated. Its functions are not assumed to be abstract, they must be declared as such. An interface is an abstract class whose functions are assumed to be abstract even if they are not declared as such. Thus, an abstract class may define a function, but an interface may not (I believe).
Comment