java - 如何处理2个几乎相同的构造函数

标签 java constructor duplicates overloading

<分区>

如果我的自定义类中有 2 个构造函数,其中一个接受一个额外的参数并完成第一个构造函数所做的所有事情,但只增加了一行代码(并且这一行使用了额外的参数),如何最好地处理有了这个而不必复制第一个构造函数中的所有代码?

示例代码

public myConstuctor(int number, int number2){

    int result = (number + number2);
    int result2 = (number2 - number1)

    //Etc
    //Etc
    //Etc
    //Etc

}

public myConstructor(int number1, int number2, int number 3){

    int result = (number + number2);
    int result2 = (number2 - number1)

    //Etc
    //Etc
    //Etc
    //Etc

    int result3 = (result + result2 + number3)


}

最佳答案

你可以让第二个构造函数调用第一个:

public MyClass(int number1, int number2, int number3) {
    this(number1, number2);

关于java - 如何处理2个几乎相同的构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18191903/

相关文章:

java - Android - ExoPlayer 在没有太多缓冲的情况下尽快开始播放

c# - 构造函数可以返回子类吗?

scala - 为 scala trait 提供构造函数

java - 绑定(bind)动态列表时的奇怪问题

java - Hibernate:为列表中的同一对象引用生成不同(唯一)ID

python - 如何获取列表中相同的行索引?

java - 在 Tomcat servlet 中创建套接字 - 权限被拒绝(连接失败)

java - 使用 JavaFX 使用 Canvas 绘制一个移动的球

c# - 筛选列表数据 C#

java - 使用类基础配置扫描 REST Controller 类