Possible Duplicates:
interface and abstract class. Abstract classes vs Interfaces
Can anyone tell me when one should use an abstract class and when one should use an inte开发者_Python百科rface with sample scenarios?
If you're defining behavior (like IEnumerable, since a List acts like an IEnumerable), then use an interface, but if you're defining a kind of object (an IS-A) relationship, use an abstract class (like Stream -- since a MemoryStream IS-A Stream).
You should use an abstract class if you need to supply a base implementation.
Otherwise, use an interface.
When you want to provide an implementation of a method/set of methods but don't want people to directly instantiate your parent class, use an Abstract Class.
If you want to define what members a class must interface, but not provide any implementation, use an Interface.
 
         
                                         
                                         
                                         
                                        ![Interactive visualization of a graph in python [closed]](https://www.devze.com/res/2023/04-10/09/92d32fe8c0d22fb96bd6f6e8b7d1f457.gif) 
                                         
                                         
                                         
                                         加载中,请稍侯......
 加载中,请稍侯......
      
精彩评论