Java / Lombok Interview questions
What is @Accessors used for and how does it change fluent-style access?
@Accessors customizes the naming and chaining style of Lombok's generated getters/setters,
moving away from strict JavaBeans conventions toward a more fluent, chainable style some codebases prefer.
@Accessors(fluent = true, chain = true) @Getter @Setter public class Person { private String name; private int age; } Person p = new Person().name("Ada").age(34); // no "get"/"set" prefix, and setters return `this`
fluent = true drops the get/set prefixes entirely (so
name() and age() serve as both getter-style and setter-style access), while
chain = true makes setters return the object itself so calls can be chained. This is a stylistic
choice — standard JavaBeans-style accessors remain the default and are what most frameworks (like
Jackson, by default) expect, so switching to fluent accessors can require extra configuration for such tools to
still work correctly.
More Related questions...