Avatar ·

Wann man statische Klassen in C# verwendet und warum sie nicht immer schlecht sind

Hallo zusammen! Ich bin ein Anfänger in der C#-Entwicklung (lerne seit etwa 4 Monaten). Ich habe die Grundlagen der OOP scheinbar verstanden: Klassen, Objekte, Vererbung, Polymorphismus. Aber es gibt ein Thema, das mich verwirrt – statische Klassen. In den Lernbeispielen sehe ich oft, dass sie für Helfer oder Konstanten verwendet werden. Zum Beispiel habe ich eine solche Klasse für mathematische Operationen geschrieben: ```csharp public static class MathHelper { public static double CircleArea(double radius) { return Math.PI * radius * radius; } public static double CelsiusToFahrenheit(double celsius) { return celsius * 9 / 5 + 32; } } ``` Aber dann habe ich in Foren gelesen, dass statische Klassen die OOP-Prinzipien verletzen (insbesondere Dependency Injection und Testbarkeit) und man sie besser vermeiden sollte. Man