问题标签 [subclass]

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 回答
4167 浏览

syntax - 采用 Ordered[A] 的任何子类型的函数的 Scala 语法是什么?

我想编写一个适用于任何具有总排序的Scala 类型的函数(即我可以在其上使用'<')。那是什么语法?我想出的最好的是

但是,当我尝试从 REPL 使用它时,这不起作用:

本质上,我相信我想要这个 Haskell 代码的等价物:

我在 Debian 系统上使用 scala 2.7.3。

我错过了什么,在哪里?

0 投票
2 回答
377 浏览

c# - 数据绑定子类

假设我有这 3 个课程:

比如说,我已经创建了很多 ClassChild1 和 ClassChild2 类型的对象,并存储在这个 List 中:
List< ClassParent> _Test;

我想将此列表绑定到 GridView
MyGridView.DataSource=_Test;

这可行,但它只显示网格中的一个字段(ClassParent 类中的 TestParent 属性)。我明白为什么:该列表由“ClassParent”对象组成,因此绑定仅使用该类的属性完成。问题是 ClassChild1 和 ClassChild2 类型的对象继承自 ClassParent。

我的问题是:如果我有一个不同类型的对象列表,但它们都继承自同一个类,我如何将所有属性绑定到网格?

0 投票
2 回答
139 浏览

perl - 为多个客户定制部分现有 Perl 程序的最佳方式是什么?

我有一个部署到多个客户站点的现有 Perl 应用程序。不幸的是,该代码已被多次克隆,以便为个别客户定制。所以现在有几个完整的代码副本,它们都有细微(或主要)的差异。

我的任务是通过创建一个单一的通用代码库来解决这个混乱,并为不同的客户在他们自己的库中进行定制。

该应用程序已经有一个类层次结构(大约有 120 个类),如下所示:

我的目标是能够通过仅修改特定客户的库来自定义特定的类或方法。

我的第一直觉是为需要为特定客户定制的任何东西创建子类。这些子类将存在于客户特定的 lib 目录中(每个客户一个)。然后,要为客户定制一个类或方法,我只需将一个新的子类添加到客户库中。

例如,如果Job2.pm需要自定义一个方法,我可能会创建一个子类,该子类CustomJob2继承自Job2并仅包含要自定义的方法。

然后在主程序中,这个:

变成:

问题是这会破坏所有其他客户的代码,因为他们的库中没有CustomJob2该类。看来我必须CustomJob2为每个客户在库中添加一个空类。

有没有更好的办法?

我考虑过的另一种可能性是使用覆盖而不是子类。主程序只需要use lib包含客户库,任何要定制的方法都将在库中重新定义。然而,这可能是危险的,不被认为是最佳实践。

我寻求 StackOverflow 大师的智慧来寻找解决这个问题的最佳方法。

0 投票
1 回答
806 浏览

ruby - 我如何在鞋类中进行子类化?

这是我正在谈论的一个简单的测试 Ruby Shoes 程序:当我尝试使用子类语法时,喜欢class Hello < Shoes并运行我的程序,它会抱怨“未定义的方法参数”或“未定义的方法堆栈”。显然它不能继承鞋类,因此对“para”或“stack”方法一无所知。但是,当我将它作为一个块传递给 Shoes.app 时,它运行良好,例如Shoes app do.....

可能是什么问题呢?

0 投票
2 回答
14335 浏览

objective-c - 覆盖超类中的方法的 Objective C 子类

在Objective C中,如果你正在继承一些东西,并且打算覆盖超类上的方法,你应该在你的子类@interface中重新声明超类方法吗?

例如,如果您正在继承 UIViewController(例如 MyViewController),并且您计划覆盖“viewDidLoad”,您应该在 MyViewController @interface 声明中包含该方法,还是只在 MyViewController.m 中实现它?

在我遇到的示例中,我已经看到它以两种方式完成(在子类接口中重新声明该方法,或者不重新声明该方法)。可能没有任何功能差异,但最佳实践是什么?

0 投票
5 回答
3427 浏览

java - 有没有其他方法可以在 Java 中实现克隆?

在我的 Java 项目中,我有一个包含各种类型交易者的向量。这些不同类型的交易者是交易者类的子类。现在,我有一个将 Trader 作为参数并在向量中存储 50 次左右的方法。我遇到了问题,因为存储同一个对象 50 次只是存储同一个对象的 50 个引用。我需要存储该对象的 50 个副本。我已经研究过实现Clone,但我不希望定义 Trader 类型的程序员不得不担心使他们的类可克隆。此外,正如this page所指出的,实现克隆会产生各种问题。我认为复制构造函数也不会起作用,因为如果我在 Trader 类中定义了一个,它就不会知道它正在复制的 Trader 的类型,而只会创建一个通用的 Trader。我能做些什么?

编辑:我真的不想制作某个对象的精确副本。我真正想做的是将一定数量的交易者添加到向量中。问题是用户需要在参数中指定他想要添加的交易者类型。这是我正在尝试做的一个示例:(尽管我的语法完全是虚构的)

我怎样才能在 Java 中实现这样的目标?

0 投票
8 回答
13315 浏览

python - 对 Python 集类进行子类化、添加新实例变量的正确(或最佳)方法是什么?

我正在实现一个几乎与集合相同的对象,但需要一个额外的实例变量,因此我将内置集合对象子类化。确保在复制我的一个对象时复制此变量的值的最佳方法是什么?

使用旧的 sets 模块,以下代码完美运行:

但这不适用于内置的 set 模块。

我能看到的唯一解决方案是覆盖每个返回复制的集合对象的单个方法......在这种情况下,我可能不会打扰对集合对象进行子类化。当然有一个标准的方法来做到这一点?

(为了澄清,以下代码不起作用断言失败):

)

0 投票
3 回答
7087 浏览

ios - 突出显示时不为自定义 UIButton 子类调用 drawRect

将 drawRect 用于自定义 UIButton 子类时,它似乎永远不会在突出显示时被调用来绘制按钮。我需要在我的触摸事件中为我的按钮调用 setNeedsDisplay 吗?

0 投票
3 回答
1317 浏览

c++ - 窗户挂钩问题

正在使用这个:

我可以看到我想要处理的消息,但我想阻止这些消息到达目标窗口。所以我尝试了这个:

当我这样做时,我可以修改消息,并阻止目标窗口处理它,但是这个钩子看不到我需要处理的消息。我想这是因为它被发布到目标窗口的队列中,而不是发送?有没有办法解决这个问题?我听说窗口子类化可能能够做到这一点,但我可以在不同的进程中对窗口进行子类化吗?有没有办法使用钩子来做到这一点?

0 投票
2 回答
13728 浏览

c++ - 如何拦截发送到窗口的消息?

我想截获在不同进程中发送到窗口的消息。做这个的最好方式是什么?使用 WH_GETMESSAGE 挂钩时看不到消息,并且不确定是否可以跨进程进行子类化?任何帮助将非常感激。