构造函数VS setter方法

Abr*_*ner -3 java

为什么setterconstructor处理将值分配给我的私有变量时需要一个方法。

有什么不同?

public class Account {


private String name;


public Account(String name)
{
    this.name = name;
}

public void setName(String Name)
{
    this.name = name;
}

public String getName()
{
    return name + " is the best";
}
Run Code Online (Sandbox Code Playgroud)

Pet*_*rey 5

构造函数参数最适合必填字段。如果不提供所有必需的值,则无法创建对象。

当命名字段是可选字段时,最好使用命名字段,可以按任意顺序设置,您要弄清楚哪个字段是什么。当类型相同并且很容易混淆时,命名字段还有助于避免混淆。

笔记:

  • 这些可以组合使用。
  • 您可以使用工厂方法或构建器,而不是直接调用构造器。