问题标签 [multiple-inheritance]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 从两个父类继承
我很久以前就读过这个,但现在从未尝试过,我不记得这是否可能。是否可以在 php5 上从两个父级扩展一个类,例如
class_d 扩展了 class_c 和 class_b
此外,如果 class_c 和 class_b 本身是从 class_a 扩展的,你能做到这一点......所以你会得到这样的东西
c# - 如何用 C# 等良好但多继承的截断语言解决“必须是 MarshalByRefObject”?
如何用 C# 等良好但多继承的截断语言解决“必须是 MarshalByRefObject”?
问题很简单,在某些情况下你只需要从这个类继承(基础设施要求)。在这里真的无关紧要,哪种情况。那么,如果您已经从其他一些类(您的领域模型要求)继承,您会怎么做?
顺便说一句,好的应用程序框架,如 spring.net 始终确保您不必从此类继承,无论您需要将哪种基础设施应用于您的类。
我想知道我在这里得到-3票是为了什么?:)
vb.net - VB .Net 中是否可以进行多重继承?
VB .Net 中是否可以进行多重继承?如果是这样,语法是什么?
java - Java中的输入和输出流管道
有没有人对在 Java 中创建一个既是 InputStream 又是 OutputStream 的 Pipe 对象有什么好的建议,因为Java 没有多重继承,并且两个流都是抽象类而不是接口?
潜在的需求是拥有一个可以传递给需要 InputStream 或 OutputStream 的东西的单一对象,以将输出从一个线程传递到另一个线程的输入。
oop - 多重继承是邪恶的吗?
可能重复:
多重继承的确切问题是什么?
为什么多重继承被认为是邪恶的,而实现多个接口却不是?尤其是当曾经认为接口只是纯粹的抽象类时?
(或多或少)重复 多重继承的确切问题是什么?,C#中的多重继承,以及其他一些......
zend-framework - Zend框架如何在域中建立多表继承?
我有一个数据库结构,其中包含一个 Person 表,其中包含名称、电子邮件、company_id、personType 等字段。因为不是所有的人都必须是系统用户的,所以我有一个单独的表用户,它为系统中的用户定义用户名和密码。
我有以下代码来定义人员表的表数据网关:
这段代码定义了 Person 的域对象:
最后,我有另一个用户表数据网关:
还有一个像这样扩展 Model_Person 表的基本类:
如何正确扩展“Model_User”类(它为除一个以外的所有其他类型的用户提供基本类型)以使用映射到一个表的“Model_Person”类函数,同时还将实际的“Model_User”函数映射到使用第二张桌子?
c++ - 钻石继承 (C++)
我知道拥有钻石继承权被认为是不好的做法。但是,我有两个案例,我觉得钻石继承非常适合。我想问一下,你会建议我在这些情况下使用钻石继承,还是有其他设计可以更好。
案例 1:我想在我的系统中创建代表不同类型“动作”的类。这些动作按几个参数分类:
- 动作可以是“读”或“写”。
- 动作可以有延迟或无延迟(它不仅仅是 1 个参数。它显着改变了行为)。
- 动作的“流类型”可以是 FlowA 或 FlowB。
我打算有以下设计:
当然,我会遵守没有 2 个动作(从 Action 类继承)将实现相同的方法。
案例 2:我在我的系统中为“命令”实现复合设计模式。一个命令可以读、写、删除等。我也想有一个命令序列,也可以读、写、删除等。一个命令序列可以包含其他命令序列。
所以我有以下设计:
此外,我还有一种特殊的命令,“现代”命令。一个命令和复合命令都可以是现代的。成为“现代”会为一个命令和复合命令添加特定的属性列表(它们的属性大多相同)。我希望能够持有指向 CommandAbstraction 的指针,并根据所需的命令类型(通过 new)对其进行初始化。所以我想做下面的设计(除了上面的):
同样,我将确保没有 2 个从 CommandAbstraction 类继承的类将实现相同的方法。
谢谢你。
c++ - 多重继承
上面的 foo 调用是编译时错误。我想用obj的B部分调用foo而不使用虚拟继承。我怎么做。
另外,在虚拟继承的情况下,为什么需要将偏移信息存储在vtable中。这可以在编译时确定。在上述情况下,如果我们将 foo 与 D 的对象一起传递,则只有在编译时我们才能计算 D 的 A 部分的偏移量。
c++ - C++ 如何选择调用哪个重载函数?
假设我有三个课程:
我的意思是说我有两个类,然后是第三个类,它扩展了两者(多重继承)。
现在说我在另一个类中定义了一个函数:
我用两者的实例调用这个函数:
这会导致编译时错误,说明函数调用不明确。
除了这种情况,C++ 编译器在哪些情况下判断调用不明确并抛出错误(如果有)?编译器如何确定这些情况是什么?
java - 继承选项
除了实现接口之外,我们可以用于多重继承的其他选项是什么