Getters and Setters

Accessing private fields

4 min read

Getters and Setters

Getters and setters provide controlled access to private variables and allow validation logic.

Code Examples

Controlled access via getters and setters

java
1
2class Person {
3    private String name;
4    private int age;
5
6    public String getName() {
7        return name;
8    }
9
10    public void setName(String name) {
11        this.name = name;
12    }
13
14    public int getAge() {
15        return age;
16    }
17
18    public void setAge(int age) {
19        if (age > 0) {
20            this.age = age;
21        }
22    }
23}
24
25Person p = new Person();
26p.setName("Alice");
27p.setAge(25);
28System.out.println(p.getName());
29          

Use Cases

  • Validation logic
  • Read-only or write-only fields
  • Framework compatibility (Spring, Hibernate)

Common Mistakes to Avoid

  • No validation in setters
  • Making all fields mutable