问题标签 [multiple-constructors]

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 投票
3 回答
64 浏览

java - 包含相同类/对象的另一个构造函数的构造函数

我有一个SomeClass具有以下成员字段和构造函数的类

第三个构造函数是否会创建与以下相同的对象:

0 投票
1 回答
106 浏览

php - self:: 在父类的静态方法中引用派生类

我喜欢这个答案中提出的想法,允许在 PHP 中使用多个构造函数。我的代码类似于:

现在我想创建一个派生类B,它将使用相同的“伪构造函数”,因为它是相同的代码。但是,在这种情况下,当我不对create()方法进行编码时,self常量是 class A,所以变量$aa$bb都是 class A,而我希望$bb是 class B

如果我使用$this特殊变量,这当然是 class B,即使在A范围内,如果我从B.

我知道我可以复制整个create()方法(也许 Traits 有帮助?),但我还必须复制所有“构造函数”(所有create*方法),这很愚蠢。

即使在上下文中调用该方法,我如何才能帮助$bb成为?BA

0 投票
2 回答
173 浏览

c++ - Inheriting constructors work only partially

I have following class, written so, as to work completely, whatever the typedef is:

I wanted to make a subclass, that is actually almost the same, apart from overloaded typedef:

What I wanted to achieve was to make a class B, that is: - identical to A - has all of As functions (there are few member functions in A, that I've not written) - has all of As operators - has all of As constructors - has different typedef - has the same destructor

My code does not work, because I can't call B(void*, uint32, uint32, size_t), which is what I want. (Intellisense shows me only B() and B(const B&) as available constructors).

0 投票
1 回答
62 浏览

objective-c - 在 Objective C 中级联构造函数是否安全?

我想做以下事情:

但我知道,当我调用 时[self initWithVal1:[NSDecimalNumber zero]self还没有被初始化。但是,我在 itnernet 上看到了一些示例,这些示例在示例中显示了这一点。这是安全的,还是我必须像下面那样每次都初始化它们?

我不喜欢这种方法,因为它会重复代码,例如_prop3 = 12,如果以后必须更改代码,这会导致潜在的差异。

0 投票
1 回答
50 浏览

java - 从缓冲文件中解析对象并发送到正确的构造函数时出现问题

所以我很难解决一个问题,目前正在使用缓冲阅读器读取文件的midi播放器。我正在将文件中的每个对象作为字符串读取到数组列表中。问题是当文件中可能存在三个不同的潜在对象时,一个音符的频率是双倍的,midi 音符值是一个 int,一个是字母(c4#)中的音符。如何从我构建的 ArrayList 中判断字符串对象中存在哪种类型的对象。

构造函数很简单

如何区分字符串类型的数组列表中的字符串或双精度对象。我不知道是否应该更改为 ArrayList 并使对象 Note 可序列化或仅测试 ArrayList 元素的 . 或 isLetter() 并从那里开始,或者有更有效的方法。

0 投票
0 回答
79 浏览

python - 对于 Python 3.5,可以从其超类的替代构造函数构造子类吗?

这是我画过几次的角落。考虑到 Python 中备用构造函数的常见程度,我会认为从其超类的备用构造函数构造子类并非闻所未闻,但我想不出如何做到这一点或在网上找到关于它的讨论。

来说明问题。假设我有以下玩具超类。

现在说我想Parent使用它的from_x方法进行子类化。我能想到四个不满意的解决方案。

  1. __init__如下所示在子类中调用超类的备用构造函数失败,因为from_x不会修改其输入,__init__而是返回一个更像__new__.

    /li>
  2. 如下所示在子类中调用超类的from_x方法也会失败,因为这两种方法都是循环调用的。__new__

    /li>
  3. 在子类中重写超类的from_x方法会使子类的重要__init__方法退化,并使其为 x 分配错误的值。

    /li>
  4. 放弃继承并改用组合是可行的,但会增加一个无用的语法层(即child.parent.x)。

    /li>

我是否错过了实现这个目标的更好选择?

0 投票
1 回答
100 浏览

java - 具有多个构造函数的 Java 到 Scala

我有一个 Java 类,我正在尝试将其重写为 Scala。它有 3 个构造函数需要可用,即使我只使用 1 个。

任何建议或指示将不胜感激。

0 投票
1 回答
1001 浏览

java - Java使用默认构造函数

我在我的程序中遇到了构造函数的小问题。它是一个简单的银行数据库,用于存储客户数据。我必须实现在两个账户之间存入、提取和转移现金的方法。我已经实现了这种构造函数来添加新的银行账户:

然后我有一个方法withdraw

withdraw方法从文件中读取数据并且必须将其存储在类中。所以我将对象创建为客户类型。但是我只想使用 Java 提供的“普通”(默认)构造函数,当您不声明自己的构造函数时。怎么做?我阅读了关于super():声明,但如果我理解正确,它仅在您从另一个类继承时才有效。

0 投票
1 回答
674 浏览

javascript - Multiple Constructors class JS

I'm from C++, and i try to understand JS OOP. But I have to admit it isn't simple ... I want to create a "simple" class.

Like this :

I know there is some ways to do it, like this :

But i want to know if there is a most elegant way to do this. I kown there is also the function 'constructor' keyword, but it seems to doesn't work for multiples overloading.

Thx

0 投票
2 回答
2509 浏览

javascript - javascript 如何使用用户输入添加构造函数对象

我正在寻求帮助解决此代码。我的任务是做一个博客,我可以在上面写多篇新文章。我正在使用一个事件监听器,链接到提交按钮。但是,当我在文本框中插入文本运行代码时,什么也没有发生。我没有收到控制台错误,所以我不知道出了什么问题。如果需要,请询问更多信息,因为我可能错过了一些重要的信息。

问题似乎是,我似乎无法在我的函数中创建另一个构造函数对象。这里出了什么问题..我错过了什么吗?

提前致谢。