社区
VB
帖子详情
关于“类只可以继承一个基类,但可以实现多个接口”的看法
漫步精心
2008-11-30 11:32:48
我的看法很简单,我觉得只可以继承一个基类是因为.net中MyBase的原因,因为要调用MyBase就必须保证基类的唯一性。而多个接口就自然成为了“帮手”
另外,请问C#或者其它语言对此也一样吗?
...全文
413
6
打赏
收藏
关于“类只可以继承一个基类,但可以实现多个接口”的看法
我的看法很简单,我觉得只可以继承一个基类是因为.net中MyBase的原因,因为要调用MyBase就必须保证基类的唯一性。而多个接口就自然成为了“帮手” 另外,请问C#或者其它语言对此也一样吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用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++,同时继承多个父类在设计的时候增加很多复杂性。因此简化为单一继承,确实需要用到多重继承的时候用接口来解决。
java 与c++的比较
全英文,但是还是比较容易看懂的,希望对大家有所帮助!
C# 子
类
实例化
基
类
基
类
使用不了子
类
的方法_.NET面试题解析
类
型、方法与
继承
...
做技术是清苦的。
一个
人,一台机器,相对无言,代码纷飞,bug无情。须梦里挑灯,冥思苦想,肝血暗耗,板凳坐穿。世界繁华竞逐,而你独钓寒江,看尽千山暮雪,听彻寒更雨歇。——来自《技术人的慰藉》 常见面试题目:1. 所有
类
型都
继承
System.Object吗?2. 解释virtual、sealed、override和abstract的区别3.
接口
和
类
有什么异同?4. 抽象
类
和
接口
有什么区别...
c++多重
继承
c++多重
继承
关于抽象
类
的一些
看法
为什么C++要定义抽象
基
类
?C++为什么要定义抽象
基
类
? 抽象
类
就是
类
里定义了纯虚成员函数的
类
。纯虚函数只提供了
接口
,并没有具体
实现
。抽象
类
不能被实例化,通常是作为
基
类
供子
类
继承
,子
类
中重写虚函数,
实现
具体的
接口
。为什么要定义抽象
基
类
呢?依我所见主要有以下原因:1. 最重要的原因是,可以将
接口
与
实现
分离。
接口
是软件产品最有价值的资源,设计
接口
比
实现
接口
需要耗费更昂贵的成本。因...
人与
继承
的C++
实现
如果上帝是程序员,我们每个人不用说了,肯定是人的每个实例,但是上帝会把人定义为
接口
呢还是
类
?究竟我们是
继承
了人这个
基
类
,还是
实现
了人的
接口
?人妖这个
类
怎么就能变过来了?双胞胎怎么生成的?连体婴儿呢? 我的
看法
是:人是
类
,而不是
接口
,有些东西人是天生就有的,因此人应该是
类
。 【人妖】属于保护
继承
,隐藏了一些细节,同时也覆盖了某些函数。 既然是protected
继承
,因此你不能直接
VB
16,718
社区成员
110,522
社区内容
发帖
与我相关
我的任务
VB
VB技术相关讨论,主要为经典vb,即VB6.0
复制链接
扫一扫
分享
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章