接口pk抽象类

作为开发者,谁从来没有陷入过周而复始地争论应该是使用接口还是抽象类?这是一场永无休止的争论,不同阵营的人总是坚定地坚持自己的立场。应当使用接口还是抽象类?对于初学者来说那更是满头雾水。
这个问题应该考虑一下几个因素:
  asp.net 2.0 bete 测试前的构造完全是通过战略模式的定义,即通过接口,实现提供程序模型。在bate 1 时,基类(抽象类)代替了接口,因而发行版也使用基类。asp.net 团队看起来对这个问题有了解决方案,不是吗?

   接口定义了行为规范,就是相关的方法地一个集合,但是没有具体的实现。接口类型是一种类型的部分描述,可能有多个类支持它,正因此,很多接口都采用后缀“able”作为结尾,诸如IDisposable,IComparable,IFormattable。如果一个接口只有一个有用的实现类,则该接口可能设计不当而造成的后果。

   基类定义了子类的公共行为和公共编程接口。类比接口灵活。如果要添加一个放入到类里,则只要该方法不是抽象地,那么任何派生类(子类)都可以使用到。而接口就不行。

   根据这些因素,只要有可能,尽量使用抽象类而不使用接口(但不是总是使用抽象类)
posted @ 2008-07-18 21:20 王杰 阅读(111) 评论(7)  编辑 收藏 网摘

  回复  引用    
#1楼 2008-07-18 21:29 | 老板 [未注册用户]
up up up !!!!!
伙计 不错
  回复  引用    
#2楼 2008-07-18 21:30 | 罗艺 [未注册用户]
抽象类一般被用做父类,
而接口更多的是被作为某种特定的功能来被需要其功能的子类实现。
  回复  引用    
#3楼 2008-07-18 21:42 | L.x [未注册用户]
我来过,
来得那么美,
那么凶.!
  回复  引用  查看    
#4楼 2008-07-18 21:47 | 蔡鹏      
抽象类表明继承的子类必须遵从的行为模式。而接口是在不同类型中如果需要遵从某些行为的时候使用的。
  回复  引用  查看    
#5楼 [楼主]2008-07-18 22:35 | 王杰      
@蔡鹏
不愧是我地老师,总结的非常好!就是这样地。
  回复  引用  查看    
#6楼 2008-07-19 07:50 | 金色海洋(jyk)      
其实也没有什么好争论的。在实际的项目利用过几回就知道了。该怎么用就怎么用嘛。
  回复  引用    
#7楼 2008-08-02 21:39 | 罗艺 [未注册用户]
尽量使用抽象类而不使用接口,
不同意你这观点。
看来你还需好好的理解一下抽象类和接口.!

标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2008-07-18 22:19 编辑过
Google站内搜索


China-pub 计算机图书网上专卖店!6.5万品种 2-8折!
近千种 9-95 新二手计算图书火热销售中!

相关文章:

相关链接: