欢迎各位大神参与讨论.

zfy3042 2016-06-11 10:49:51
我有三个基类,分别是
DALHandlerBase
DALHandlerBaseOracle
DALHandlerBaseSQLite
里面的方法都一样,唯一的不一样就是针对不同数据库(分别是MSSQL\Oracle\SQLite)
现在我用继承的形式把三个不同的文件给继承起来。方便在业务层直接调用。
但是在C#中,基类只能继承一个,并不能继承多个,有很多人说用接口来实现,但是用接口又不能直接实现我这三个文件里的方法。

望大神们一起参与讨论.
只有20分,虽然分数不高,但是已是我的全部了!望大家不要嫌分数低啊!
...全文
76 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Poopaye 2016-06-11
  • 打赏
  • 举报
回复
看不懂你想讨论什么 用一套接口实现不同数据库的操作这种事早就实现了
  • 打赏
  • 举报
回复
比如说“可口可乐是饮料,冰红茶是饮料,酸奶是饮料,这三种东西都是饮料”,这个说法包含了继承的概念。难道你说饮料就是这三种东西的组合、才叫做继承吗?那么还有第4种饮料、第5种饮料.........无穷无尽种类的饮料,既然你一辈子都说不明白什么是饮料,又你怎么立刻说明“可口可乐是饮料”?你对继承的理解就与正规概念正好相反了。 这里不涉及多重继承问题。多重继承是说类似“可口可乐是饮料,同时也是一种传递乐观积极美好感觉的物质,同时也是廉价商品,同时也是独立品牌商品”,这是多重继承。如果你连一个父类/接口都说不出来,又怎么可能从4个以上的角度去说它?
  • 打赏
  • 举报
回复
你没有搞明白什么是继承、什么是组合。目前你还不能动手编写现在的任何代码,而应该学习“继承”。等你能够说明白了这三个类继承自什么,再来考虑代码问题。
xuzuning 2016-06-11
  • 打赏
  • 举报
回复
假定 C# 允许多重继承,又假定你的三各类中都有 Query 方法 那么,你的新类中的 Query 到底该是哪个父类的 Query 的方法呢? 显然你也很难取舍,过不要说 C# 了,所以不支持多重继承是没有遗憾的!

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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