问题标签 [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.

0 投票
1 回答
252 浏览

inheritance - 继承基类

我正在尝试对 Active Directory 使用表单身份验证,但我需要来自 AD 的角色 (memberOf)。我正在尝试覆盖 RoleProvider 的成员以使其成为可能(除非有人知道更好的方法)。我在继承自 RoleProvider 的新类中遇到错误。

错误是:ADAuth.ActiveDirectoryRoleProvider' 没有实现继承的抽象成员 'System.Web.Security.RoleProvider.ApplicationName.get'

如何设置我没有覆盖的所有其他成员?我是否必须在我的继承类中创建它们,或者有没有办法告诉它只使用基类中的那些?

0 投票
5 回答
3442 浏览

php - 如何对继承对象进行单元测试?

当你使用组合时,你可以模拟你的被测类所依赖的其他对象,但是当你使用继承时,你不能模拟基类。(或者你可以吗?)

我通常更喜欢组合而不是继承,但有时继承似乎真的是这项工作的最佳工具——嗯,至少在涉及单元测试之前是这样。

那么,如何测试继承?还是您只是将其视为不可测试而将其丢弃并改用组合?

注意:我主要使用 PHP 和 PHPUnit,因此非常感谢这方面的帮助。但是知道其他语言是否有解决这个问题的方法也很有趣。

0 投票
4 回答
22190 浏览

c# - 从所属类外部调用 C# 事件?

是否有可能在任何情况下都能够做到这一点?

我现在的情况是这样的:

我的第一个想法是有一个类似的功能:

这是一个非常丑陋的组合,但它应该可以工作......但必须有一个更优雅的解决方案?.NET 库一直使用消息处理程序和控件中的调用事件来执行此操作。还有其他人有任何其他/更好的想法吗?

0 投票
6 回答
633 浏览

.net - 逻辑及其在 Collections.Generic 和继承中的应用

一切都继承自对象。这是继承的基础。一切都可以隐式地投射到继承树上,即。

因此,按照其逻辑结论,一组人也将是一组对象:

除了那行不通,设计 .NET 的人要么忽略了这一点,要么是有原因的,我不确定是哪一个。至少有一次我遇到了这很有用的情况,但我最终不得不使用一个讨厌的 hack(子类化 List 只是为了实现一个强制转换运算符)。

问题是:这种行为有原因吗?是否有更简单的解决方案来获得所需的行为?

作为记录,我相信我想要这种行为的情况是一个通用的打印函数,它通过调用 ToString() 并很好地格式化字符串来显示对象列表。

0 投票
3 回答
1424 浏览

vb.net - 在 VB.NET 中扩展 ControlCollection

我想扩展ControlCollectionVB.NET 中的基本功能,这样我就可以将图像和文本添加到自制控件中,然后自动将它们转换为图片框和标签。

所以我做了一个继承自 ControlCollection 的类,重写了 add 方法,并添加了功能。

但是当我运行这个例子时,它给出了一个NullReferenceException.

这是代码:

我在谷歌上搜索,有人说CreateControlsInstance需要重写该方法。所以我这样做了,但随后它给出InvalidOperationException了一条innerException消息NullReferenceException

我该如何实施?

0 投票
2 回答
694 浏览

c++ - 用于两个以上继承级别的非虚拟接口习惯用法?

非虚拟接口习惯用法描述了虚拟方法如何成为非公共定制点,而公共方法是非虚拟的,以允许基类始终控制定制点的调用方式。

这是一个优雅的习惯用法,我喜欢使用它,但是如果派生类本身就是一个基类,它是如何工作的

0 投票
10 回答
918425 浏览

c++ - 调用基类构造函数的规则是什么?

从派生类调用基类构造函数的 C++ 规则是什么?

例如,我知道在 Java 中,您必须将其作为子类构造函数的第一行(如果您不这样做,则假定隐式调用无参数超级构造函数 - 如果缺少,则会出现编译错误) .

0 投票
17 回答
68893 浏览

c# - A way of casting a base type to a derived type

I'm not sure if this is a strange thing to do or not, or if it is some how code smell...but I was wondering if there was a way (some sort of oop pattern would be nice) to "cast" a base type to a form of its derived type. I know this makes little sense as the derived type will have additional functionality that the parent doesn't offer which is in its self not fundamentally sound. But is there some way to do this? Here is a code example to so I can better explain what I"m asking.

I know this seems goofy but is there any way to accomplish something of this sort?

0 投票
3 回答
138 浏览

c# - 子类函数中 NotSupportedException 的编译时错误

如果我有一个尚未实现基类提供的函数的子类,我可以重写该函数并让它抛出一个NotSupportedException. 有没有办法为此生成编译时错误以避免仅在运行时遇到此错误?

更新:我不能使基类抽象。

0 投票
3 回答
8181 浏览

c# - 您如何确定给定的类型(System.Type)是否继承自特定的基类(在 .Net 中)?

这可能是一个简单的答案,我只是遗漏了一些东西,但是这里......如果我有一个类型,(即,一个实际的 System.Type......不是一个实例)我如何判断是否它继承自另一个特定的基本类型?