Warum braucht man Getter und Setter (Accessors) in Java, wenn man Felder einfach public machen kann?
Hallo zusammen! Ich habe angefangen, Java und OOP zu lernen, und habe eine Frage. Ich sehe oft, dass im Code für jedes Feld einer Klasse Getter und Setter geschrieben werden. Zum Beispiel:
```java
public class Person {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
```
Aber man könnte es einfacher machen:
```java
public class Person {
public String name;
public int age;
}
```
Und direkt darauf zugreifen: `person.name = "Wasja"`. Das ist kürzer und verständlicher! Warum Zeit mit dem Schreiben dieser Methoden verschwenden? Ich verstehe, dass es etwas mit Kapselung zu tun hat, aber in der Praxis sehe ich keinen Unterschied. Erklärt mir bitte, warum sie wirklich nötig sind, und nicht nur "so ist es üblich". Welchen praktischen Sinn hat das? Besonders interessiert mich, wie das bei zukünftigen Code-Änderungen hilft.
Noch keine Antworten.
Anmelden um eine Antwort zu hinterlassen
Blogs
Arbeiten mit Datenbanken in PHP: PostgreSQL und MongoDB