💡 1. Methoden-Signatur & Pass-by-Value
In Java gibt es ausschließlich Pass-by-Value. Bei Objektreferenzen wird der Zeigerwert kopiert, sodass Änderungen am Objekt sichtbar sind, Neuzuweisungen an die Referenzvariable jedoch nicht:
public class MathUtils {
// Statische Hilfsmethode (ohne Objektinstanz aufrufbar)
public static double clamp(double value, double min, double max) {
if (value < min) return min;
if (value > max) return max;
return value;
}
// Methodenüberladung (gleicher Name, andere Parameter)
public static int clamp(int value, int min, int max) {
return (int) clamp((double) value, min, max);
}
}
Pass-by-Value bedeutet: Java macht eine Fotokopie des Werts. Wenn du auf der Kopie eine Zahl durchstreichst, bleibt das Originalblatt unberührt.
⚡ 2. Quick-Cheat-Sheet
| Konzept | Schlüsselwort | Wirkung |
|---|---|---|
| Klassenmethode | static | Direkt über KlassenName.methode() aufrufbar |
| Rückgabelos | void | Führt Aktion aus ohne Rückgabewert |
| Varargs | int... werte | Nimmt beliebig viele Argumente als Array entgegen |
| Überladung | Gleicher Name | Unterscheidet sich durch Parameteranzahl oder -typen |
⚠️ 3. Häufige Stolperfallen (Gotchas & Anti-Patterns)
Schreibt man in einer Methode obj = new User();, ändert das beim Aufrufer gar nichts! Nur Mutationen wie obj.setName() wirken fort.
Eine static-Methode kann nicht auf this.name zugreifen, da kein Instanzkontext existiert.
🧠 4. Diagnostischer Selbst-Check
Überprüfe dein Verständnis von Sprach-Features, Speicherverwaltung und Enterprise-Architektur, bevor du den Code in der Web-IDE schreibst.