选择Java接口还是抽象类

原文地址: [url]http://software.ccidnet.com/art/322/20030312/40306_1.html[/url]
 
原文是JAVA的, 但完全使用于C#
 
原文看下来, 感觉只是说了用 接口 的作用, 对于使用 抽象类 的作用, 基本属于一笔带过.
 
总结下来就是,  如果需要多重继承的, 那么只能使用 接口
 
但是,  接口 并不提供默认行为, 也就是说, 对于原文中的每个 Motor 派生类, 都要自己实现一个 getHorsepower() 方法
 
那么, 我们假设一下, 每个派生类的 getHorsepower() 实现代码都是一样的,  这样不就有个重复代码的问题了吗 ?  再假设, 突然有一天, getHorsepower() 的实现要全部重写,  而 Motor 的种类又很多,  这个维护貌似有点烦人哦...
 
那么,  这样的话,  我们是不是应该使用 抽象类 呢 ?  但是, 抽象类 又有原文所提的缺点, 这样的话 我们到底应该如何选择呢 ?
 
呵呵, 写这篇文章并不是想扰乱大家, 只是...只是, 实在是有点犹豫,  拿不定主意.
 
还望大大们指点迷津...~~

你可能感兴趣的:(java,职场,休闲)