re: What programming best practice do you disagree with? VIEW POST

re: Getters and setters for every field, or even just getters for immutable ones. When inheritance is intended I understand the rationale but for seria...

I've never fully understood getters and setters. If I have a field that has both a getter and a setter like so:

class Person {
   private String name;

   public String getName() {

   public void setName(String name) { = name;

Why not just make the field public? What's the point in making getters and setters and not just dealing with the field directly? I asked one instructor about this and he just said "it's better encapsulation" but I don't see it.


It allows you to validate and know when fields are accessed.

Getters and Setters allow you to validate and normalize input. If this validation isn't needed then consider a public field.

code of conduct - report abuse