小编Nic*_*k W的帖子

使用"this"作为糟糕的编码实践的显式构造函数调用?

教授告诉我,使用显式构造函数调用this是"编码不良的做法",并对其进行处罚.但是,我无法在任何java风格指南中找到任何内容,我已经通过这种方式对其进行了评论.最重要的是,它似乎是在我看到的相当多的编码示例中完成的.我希望得到一些关于这是不良编码实践以及原因的信息.

我所指的一个例子:

public class SomeClass {

    private int a;
    private int b;

    public SomeClass() {
        this(0);
    }

    public SomeClass(int a) {
        this(a, 0);
    }

    public SomeClass(int a, int b) {
        this.a = a;
        this.b = b;
    }
}
Run Code Online (Sandbox Code Playgroud)

编辑:他的评论恰恰是"一个构造函数调用同一个类的构造函数不是一个好习惯.构造函数创建一个对象,所以调用一个构造函数来调用另一个构造函数在内存中发生了什么?有些事情要做."

这是具体的代码:

public class Employee {
    private String name;
    private int monthlySalary;

    // Default constructor
    public Employee() {
        this("", 0);
    }

    // Constructor
    public Employee(String name, int monthlySalary) {
        this.name = name;
        this.monthlySalary = monthlySalary;
    }

    // annualSalary() method returns …
Run Code Online (Sandbox Code Playgroud)

java constructor this

7
推荐指数
1
解决办法
172
查看次数

标签 统计

constructor ×1

java ×1

this ×1