What
is the difference between abstract class and interface in .NET?
Abstract
class can have both abstract methods as well as concrete methods. But
all interface methods are abstract in nature; they will not have any implementation.
[フレーム]
Abstract classes are meant to be inherited but interface doesnt
involve in inheritance. Interfaces can only be implemented and not inherited.
A class can inherit from only one abstract class but a class can
implement multiple interfaces.
A class inheriting from an abstract class should override all abstract
methods. However it is optional to override the concrete methods. But
a class implementing an interface should implement all the interface methods.
(追記) (追記ここまで)