Lombok
Lombok ist eine externe Java-Bibliothek, die
wiederkehrenden Boilerplate-Code automatisch generiert. Konstruktoren, Getter,
Setter und die Object-Methoden werden nicht manuell geschrieben, sondern beim
Kompilieren durch Annotationen erzeugt.
Annotationen
Über Annotationen wird gesteuert, welche Methoden Lombok generieren soll.
| Annotation | Beschreibung |
|---|---|
@RequiredArgsConstructor | Generiert einen Konstruktor mit Parametern zu allen unveränderlichen Attributen |
@AllArgsConstructor | Generiert einen Konstruktor mit Parametern zu allen Attributen |
@Getter | Generiert Get-Methoden zu allen Attributen |
@Setter | Generiert Set-Methoden zu allen veränderlichen Attributen |
@EqualsAndHashCode | Generiert Implementierungen für die Methoden boolean equals(object: Object) und int hashCode() |
@ToString | Generiert eine Implementierung für die Methode String toString() |
@Data | @RequiredArgsConstructor + @Getter + @Setter + @EqualsAndHashCode + @ToString |
Beispiel
Die Klasse Student wird mit Lombok-Annotationen versehen, sodass
Konstruktoren, Getter, Setter und die Object-Methoden automatisch generiert
werden.
- Fachklasse
- Startklasse
Student.java
@RequiredArgsConstructor
@AllArgsConstructor
@Getter
@Setter
@EqualsAndHashCode
@ToString
public class Student {
public final int id;
public final String name;
public double averageGrade;
}
MainClass.java
public class MainClass {
public static void main(String[] args) {
Student student1 = new Student(8172534, "Hans Maier");
student1.setAverageGrade(2.2);
System.out.println(student1.getName());
Student student2 = new Student(9167121, "Lisa Müller", 1.8);
System.out.println(student2);
}
}