Klasse (Informatik): Unterschied zwischen den Versionen
Sn (Diskussion | Beiträge) (Angefangen) |
Sn (Diskussion | Beiträge) (Erweitert und mit Beispiel ergänzt) |
||
Zeile 1: | Zeile 1: | ||
Eine [[Klasse (Informatik)|Klasse]] dient in vielen [[Programmiersprache]]n als "Bauplan" für [[Objekt (Informatik)|Objekt]]e. Durch den Aufbau der Klasse wird festgelegt, welche [[Attribut (Informatik)|Attribut]]e und [[Methode (Informatik)|Methode]]n ein Objekt haben kann. Die konkrete Ausprägung dieser Attribute und die Ergebnisse der Methodenausführung bleiben den Objekten selbst überlassen. Die Klasse legt nur fest, wie die Objekte aussehen ''können'' und welches Verhalten man von ihnen erwarten darf. | Eine [[Klasse (Informatik)|Klasse]] dient in vielen [[Programmiersprache]]n als "Bauplan" für [[Objekt (Informatik)|Objekt]]e. Durch den Aufbau der Klasse wird festgelegt, welche [[Attribut (Informatik)|Attribut]]e und [[Methode (Informatik)|Methode]]n ein Objekt haben kann. Die konkrete Ausprägung dieser Attribute und die Ergebnisse der Methodenausführung bleiben den Objekten selbst überlassen. Die Klasse legt nur fest, wie die Objekte aussehen ''können'' und welches Verhalten man von ihnen erwarten darf. | ||
Zum Beispiel legt die [[Python (Programmiersprache)|Python]]-Klasse <code>str</code> fest, dass alle <code>str</code>-Objekte, also [[String (Datentyp)|String]]s, eine Methode namens <code>isnumeric()</code> enthalten, die die Information liefert, ob dieser String numerisch ist. Das Ergebnis des Methodenaufrufs ist natürlich von dem String abhängig, auf dem es aufgerufen wird. | Zum Beispiel legt die [[Python (Programmiersprache)|Python]]-Klasse <code>str</code> fest, dass alle <code>str</code>-Objekte, also [[String (Datentyp)|String]]s, eine Methode namens <code>isnumeric()</code> enthalten, die die Information liefert, ob dieser String numerisch ist. Das Ergebnis des Methodenaufrufs ist natürlich von dem String abhängig, auf dem es aufgerufen wird.<syntaxhighlight lang="python" line="1"> | ||
>>> string1 = 'Hello World!' | |||
>>> string2 = '42' | |||
>>> string3 = str() | |||
>>> string1.isnumeric() | |||
False | |||
>>> string2.isnumeric() | |||
True | |||
>>> string3.isnumeric() | |||
False | |||
</syntaxhighlight>In so genannten ''streng getypten Sprachen'' wie [[Java (Programmiersprache)|Java]] muss beim Programmieren für jedes Objekt festgelegt werden, welchen Datentyp es hat. Dadurch kann schon beim [[Compiler|Kompilieren]] überprüft werden, ob alle aufgerufenen Methoden auch für die entsprechenden Objekte existieren. In ''dynamisch getypten Sprachen'' wie Python ist dies erst möglich, wenn das Programm läuft. | |||
== Definition in Java == | |||
{{Lückenhaft}} | |||
== Definition in Python == | |||
{{Lückenhaft}} | |||
== Definition in JavaScript == | |||
{{Lückenhaft}} | |||
== Abstrakte Klasse == | |||
{{Lückenhaft}} |
Version vom 5. September 2023, 06:28 Uhr
Eine Klasse dient in vielen Programmiersprachen als "Bauplan" für Objekte. Durch den Aufbau der Klasse wird festgelegt, welche Attribute und Methoden ein Objekt haben kann. Die konkrete Ausprägung dieser Attribute und die Ergebnisse der Methodenausführung bleiben den Objekten selbst überlassen. Die Klasse legt nur fest, wie die Objekte aussehen können und welches Verhalten man von ihnen erwarten darf.
Zum Beispiel legt die Python-Klasse str
fest, dass alle str
-Objekte, also Strings, eine Methode namens isnumeric()
enthalten, die die Information liefert, ob dieser String numerisch ist. Das Ergebnis des Methodenaufrufs ist natürlich von dem String abhängig, auf dem es aufgerufen wird.
>>> string1 = 'Hello World!'
>>> string2 = '42'
>>> string3 = str()
>>> string1.isnumeric()
False
>>> string2.isnumeric()
True
>>> string3.isnumeric()
False
In so genannten streng getypten Sprachen wie Java muss beim Programmieren für jedes Objekt festgelegt werden, welchen Datentyp es hat. Dadurch kann schon beim Kompilieren überprüft werden, ob alle aufgerufenen Methoden auch für die entsprechenden Objekte existieren. In dynamisch getypten Sprachen wie Python ist dies erst möglich, wenn das Programm läuft.
Definition in Java
In diesem Artikel oder Abschnitt fehlen noch wichtige Informationen.
Hilf dem KGS-Wiki, indem du sie recherchierst und einfügst.
Definition in Python
In diesem Artikel oder Abschnitt fehlen noch wichtige Informationen.
Hilf dem KGS-Wiki, indem du sie recherchierst und einfügst.
Definition in JavaScript
In diesem Artikel oder Abschnitt fehlen noch wichtige Informationen.
Hilf dem KGS-Wiki, indem du sie recherchierst und einfügst.
Abstrakte Klasse
In diesem Artikel oder Abschnitt fehlen noch wichtige Informationen.
Hilf dem KGS-Wiki, indem du sie recherchierst und einfügst.