C# Wofür sind Klassen gut?

... komplette Frage anzeigen

2 Antworten

Eine Klasse ist immer dynamisch im Gegensatz zu einer Struktur. Eine Klasse kann aber auch Methoden (also Funktionen) und Instanzen anderer Klassen (Objekte ) haben. Eine Klasse dient immer der Kapselung von Daten. Klassen können auch vererbt werden. Ein klassisches Bsp. bei Klassen ist eine Klasse, die ein Tier beschreibt und nur die Eigenschaften + Methoden hat, die jedes Tier hat (z.B. Art der Atmung). Von Tier könnte man wieder die Klassen Fische und Hunde ableiten. Bei Hunden würde dann z.B. die Eigenschaft Anzahl Beine und die Methode laufen dazu kommen was es bei Fischen nicht gibt. Wenn man nun in seinem Programm mit mehreren Hunden zu tun hat , würde man mehrere Variablen/Instanzen der Klasse Hunde bilden und damit arbeiten..

Antwort bewerten Vielen Dank für Deine Bewertung

Die erste Programmiersprache, in der es Klassen gab, war Simula 67. Über ihre Entstehung schreibt die Wikipedia:

Erzählt wird, dass Dahl und Nygaard an Schiffssimulationen gearbeitet hatten. Dabei ergab sich durch die kombinatorische Explosion von Parameterbeziehungen eine verwirrende Vielfalt an Möglichkeiten, wie sich die verschiedensten Attribute der unterschiedlichen Schiffe gegenseitig beeinflussen konnten. So kam die Idee auf, die unterschiedlichen Schiffstypen jeweils als eigenständige Objekte zu klassifizieren, wobei jede Klasse von Objekten für die eigenen Daten und das eigene Verhalten selbst zuständig war.

Am besten wirst Du den Sinn von Klassen verstehen, wenn Du fragst, wozu die ganze objektorientierte Programmierung gut ist. Denn dabei werden u.a. auch Klassen verwendet, und für mehr als nur einen Zweck. Klassen dienen als Behälter für Funktionsbibliotheken, sie dienen als Baupläne für Objekte, sie dienen als Fabriken für Objekte, und sie dienen als austauschbare Module für dies und jenes. Im Kern geht es bei alledem immer darum, sich beim Programmieren und beim Nachdenken über Programme die Mühe zu erleichtern, den Überblick zu behalten und möglichst sicher sein zu können, daß das Programm tatsächlich das tut, was es soll. Manche Kollegen haben daraus eine Glaubenslehre mit Dogmen gemacht - "Alles ist ein Objekt", "Der Mensch denkt objektorientiert", "Objektorientierte Programmierung ist einfach". Auch wenn nichts davon wirklich stimmt, so ist Objektorientierte Programmierung dennoch eine praktische Sache und es lohnt, sie zu verstehen.

Antwort bewerten Vielen Dank für Deine Bewertung

Was möchtest Du wissen?