Is it bad practice to make a setter return “this”?

前端 未结 27 950
抹茶落季
抹茶落季 2020-11-27 09:39

Is it a good or bad idea to make setters in java return \"this\"?

public Employee setName(String name){
   this.name = name;
   return this;
}
27条回答
  •  孤城傲影
    2020-11-27 09:55

    This may be less readable

    list.add(new Employee().setName("Jack Sparrow").setId(1).setFoo("bacon!")); 
    

    or this

    list.add(new Employee()
              .setName("Jack Sparrow")
              .setId(1)
              .setFoo("bacon!")); 
    

    This is way more readable than:

    Employee employee = new Employee();
    employee.setName("Jack Sparrow")
    employee.setId(1)
    employee.setFoo("bacon!")); 
    list.add(employee); 
    

提交回复
热议问题