关于“类只可以继承一个基类,但可以实现多个接口”的看法

漫步精心 2008-11-30 11:32:48
我的看法很简单,我觉得只可以继承一个基类是因为.net中MyBase的原因,因为要调用MyBase就必须保证基类的唯一性。而多个接口就自然成为了“帮手”
另外,请问C#或者其它语言对此也一样吗?
...全文
410 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
天乐_那由他 2008-12-01
  • 打赏
  • 举报
回复
似乎现代的设计思想不鼓励继承,能不继承就不继承,继承大多数时候不如改用聚合
PrinSun 2008-12-01
  • 打赏
  • 举报
回复
.NET中接口的存在也并不是完全为了多继承,接口可以比类更抽象,可以说他是一类具有相似性类的归类...
而且接口在多人开发中用的也比较普遍,在使用Remoting的C/S架构中,接口可以隐藏实体类的实现方法从而可以使客户端更瘦,并且安全.接口相对于纯虚类而言,它的好处在.NET中就体现在多继承上.
面向接口的编程也是一种方向
vrhero 2008-12-01
  • 打赏
  • 举报
回复
MyBase只是VB的关键字,多态的一种表象而已,和你的问题毫无关系...

这个问题是争议很大也是争论多年没有结果的单根继承和多根继承的问题...深究起来这是个学术问题了...
josephSC 2008-12-01
  • 打赏
  • 举报
回复
个人认为inherit 和 interface 各有用处,但互补性不大
漫步精心 2008-11-30
  • 打赏
  • 举报
回复
原来有这样的原因,经验不足的表现啊,呵呵。
pinyu 2008-11-30
  • 打赏
  • 举报
回复
并不是因为MyBase的原因,更重要的如果是多重继承会导致一些莫名其妙的问题。如C++,同时继承多个父类在设计的时候增加很多复杂性。因此简化为单一继承,确实需要用到多重继承的时候用接口来解决。

16,717

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧