在将对象传递给方法时初始化对象或者首先应该初始化然后传递它是一种好习惯吗?

时间:2016-04-04 19:15:10

标签: java

我不确定如何将这个问题用于标题,因为我不确定这种做法是否有名称。

是否正在初始化一个对象并同时通过一个可接受的练习,或者我应该总是在一个单独的行上初始化并在下一行传递它?两个例子都很好吗?

这是一种可接受的节省空间的技术吗?

静态修改器可以忽略,因为我刚刚制作了一个新项目并将所有内容保留为静态,以创建一个快速示例。

private static Rectangle2D rect;

public static void main(String[] args) {
    exampleMethod1(rect = new Rectangle2D.Double(0, 0, 32, 32));

    // OR

    rect = new Rectangle2D.Double(0, 0, 32, 32)
    exampleMethod1(rect);
}

public static void exampleMethod1(Rectangle2D rect) {
    // Do stuff
}

2 个答案:

答案 0 :(得分:8)

大多数人认为#2更具可读性,但这通常是个人偏好。

答案 1 :(得分:0)

我必须同意Louis Wasserman对此的看法以及#2更具可读性的原因仅仅是因为在两个单独的行中有两个操作。如果你要应用相同的方法并将所有内容放在同一行中,那么它可能会变得令人讨厌,这个愚蠢的例子:

exampleMethod1(rect = new Rectangle2D.Double(isValid ? 0 : 1, 0, 
                 someNumber + 2, getValue()));