Java – which is better to assign attribute values in constructors or classes?

Are there any differences between instantiations of the following types?

If not, what are the best practices?

"In class":

class A {
    boolean b = true;

    public A(){
    }
}

In constructor:

class B {
    boolean b;

    public B(){
        b = true;
    }
}

Variable types are for example only The only difference I see is that when the property is a complex type (class), the constructor depends on the value given to the constructor containing the class:

class A {
    B b;
    public A(String s){
        b = new B(s);
    }
}

Solution

In fact, they are equivalent But from a readability point of view, the first one is more readable In addition, when someone navigates from the IDE to a variable declaration (for example, Ctrl + click in eclipse), it's easy to see the default value

View the contents of the official tutorial –

Therefore, when the process is simple, you can easily use simple single line initialization technology Constructor is a feasible method for complex initialization selection

The content of this article comes from the network collection of netizens. It is used as a learning reference. The copyright belongs to the original author.
THE END
分享
二维码
< <上一篇
下一篇>>