在什么情况下用抽象类优于用接口解决方法

在什么情况下用抽象类优于用接口
在什么情况下用抽象类优于用接口;
自定义HTTP 处理程序的配置(IIS6.0),
除了在web.config的httphandles中配置之外,还需不需要IIS 6.0 中注册处理程序.

------解决方案--------------------
抽象类中可以写实现代码,接口中不可以。
如果子类和抽象类类似,那些子类要是有一些相同实现的方法,就可以写在抽象类中,共用抽象类中的方法,如果是接口一定要重写会有很多代码重复,这是最大的优点吧

自定义HTTP 处理程序,听说在 IIS 中要配置一下。
------解决方案--------------------
抽象类之于接口的优点在于,抽象类可以写实例方法,通过派生继承,可以更有效的实现代码重用。
但由于重用实例方法,从某方面讲抽象类增加了耦合度,而接口则最大限度的实现了节耦(接口本人认为最大的优点就在于解耦)。
面向对象其实是一个很难说的东东,一定方面要求最大量的实现代码重用,一方面又要求最大量的低耦高聚,其本身就是矛盾的,我们只有在其中找到一个均衡点,我们的程序才会变得更加完善。什么时候用接口什么时候用抽象类,根据项目需要而定,有时两者结合使用代码灵活性更大。

.net 自定义httphandler,只需要在webconfig文件配置就可以,并不需要在iis配置。
另:如果有兴趣可以研究一下iis filter,其功能跟httphandler类似,大功能更强大(这个需要通过iis配置)
------解决方案--------------------
如果多个子类之间有共同的业务实现逻辑,那么将它们这些逻辑向上到抽象类内实现,否则用接口.
------解决方案--------------------
鱼和熊掌兼得,定义接口,并在抽象类中实现它。