We're a place where coders share, stay up-to-date and grow their careers.
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() { return this.name; } public void setName(String name) { this.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.
I've never fully understood getters and setters. If I have a field that has both a getter and a setter like so:
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.