Informatik /

Grundwissen Java Informatk

Grundwissen Java Informatk

 Grundwissen INFORMATIK
Objekt
Ein Exemplar von Dingen, Personen oder Begriffen der realen Welt oder der Vorstellungswelt.
Ein Objekt hat ei

Grundwissen Java Informatk

S

Srishti Jain

9 Followers

87

Teilen

Speichern

Grundwissen Java Informatk für Gymnasium

 

11/12

Lernzettel

Grundwissen INFORMATIK Objekt Ein Exemplar von Dingen, Personen oder Begriffen der realen Welt oder der Vorstellungswelt. Ein Objekt hat einen eindeutigen Namen, bestimmte Eigenschaften und reagiert mit einem definierten Verhalten auf seine Umwelt. ,,Alles ist Objekt" Klasse Eine Klasse beschreibt eine bestimmte Art von Objekten. Sie dient als „Bauplan“, in dem festgelegt ist, welche Attribute und welche Methoden die erzeugten Objekte haben. Attribut Die Eigenschaften der Objekte werden durch die Wer ihrer Attribute beschrieben. VOGEL - farbe - geschlecht - spannweite + singe() - legeEi() Attributwert: Blue Jay : VOGEL farbe = „blau"; Der Attributwert ist der momentane Wert eines Attributs und kann verändert werden. geschlecht weiblich"; spannweite = 20; ,,Bauplan" singe() legeEi() = VOGEL - farbe - geschlecht - spannweite + singe() + legeEi() Methode Objekte können auf Befehl gewisse Operationen (Methoden) ausführen. Punktnotation: Objektname. Methodenname () ; Aufruf einer Methode in der „eigenen“ Klasse >>> Methodenname() Parameter Bei vielen Methoden muss man durch ein oder mehrere Argumente (Parameter) festlegen, mit welchen Eingaben sie ausgeführt werden sollen. z.B.: public int berechne Summe (int x, int y) >>> Methode benötigt zwei Zahlen aus Eingabe z.B. berechne Summe (8,12); lokale Variablen Innerhalb von Methoden können lokale Variablen (auch: lokale Attribute) deklariert werden. Ihre Lebensdauer ist auf die Dauer der Ausführung der Methode beschränkt. Nur innerhalb der Methode kann auf sie zugegriffen werden. public int berechneSumme (int a, int b) { Modellierung: Ausschnitte der Wirklichkeit werden zielgerichtet vereinfacht und strukturiert dargestellt. Man analysiert, wie dieser Ausschnitt so dargestellt werden kann,...

Nichts passendes dabei? Erkunde andere Fachbereiche.

Mit uns zu mehr Spaß am Lernen

Lerne mit über 500.000 Lerninhalten von den besten Schüler:innen!
Vernetze dich mit anderen Schüler:innen und helft euch gegenseitig!
Bekomme bessere Noten ohne großen Aufwand!

App herunterladen

Alternativer Bildtext:

dass er im Computer umgesetzt werden kann. Realität - Attributwerten (- Methoden) Objekte und Klassen - Diagramme Objektkarten bestehen aus - eindeutigem Objektnamen - Attributen Bsp.: Objektkarte int summe; summe = a + bi return summe; BlueJay: VOGEL farbe = „blau"; Abstraktion singe() legeEi() geschlecht weiblich"; spannweite = 20; Modell Klassenkarten bestehen aus eindeutigem Klassennamen - Attributen - - Methoden - Zugriffsmodifikator, Parameter und Rückgabewerte bei erweiterter Klassenkarte Bsp.: Klassenkarte VOGEL - farbe - geschlecht spannweite + - singe() ·legeEi() + Datentypen, Rückgabewerte und Zugriffsrechte a) primitive (elementare) Datentypen O byte, short, int, long float oder double char O O b) Referenztypen (Objekttypen) O String >>> Strings können deswegen nicht mit dem Vergleichsoperator verglichen werden, denn der Vergleichsoperator prüft, ob die Verweise gleich sind und nicht, ob die Strings gleich sind, auf die verwiesen wird. Für den Vergleich von Strings steht die Methode equals zur Verfügung) Felder O boolean O O O 3 Schubladenmodell eines Feldes Bsp: O private: public: null protected: Deklaration: Initialisierung: gewinn Wertzuweisung an 2. Stelle: 9 private int[] gewinn; c) Rückgabewerte Rückgabewerte können sowohl primitive Datentypen als auch Referenztypen sein O falls kein Wert zurückgegeben werden soll: Rückgabetyp: void O hinter dem Schlüsselwort return stehen die Werte bzw. Variablen, die zurückgegeben werden sollen. == = d) Zugriffsrechte Zugriffsrechte dienen vor allem der Datenkapselung. Datenkapselung ist bei größeren Projekten eine Voraussetzung für effiziente Zusammenarbeit. Sie sorgt dafür, dass jede Arbeitsgruppe sich nur um die Schnittstellen kümmern muss; es ist nicht nötig, über Interna der Klassen anderer Arbeitsgruppen Bescheid zu wissen. Auf das Attribut kann nur innerhalb der definierenden Klasse zugegriffen werden. Auf das Attribut kann von allen Klassen aus, sowohl von der definierenden als auch von anderen, zugegriffen werden. Das Zugriffsrecht protected erlaubt die Verwendung der Attribute der Oberklasse auch in den Unterklassen. new int [100]; (mit 100 Plätzen) int [1] = 5; Umsetzung von Klassenkarten in Java: Klassendefinition Konstruktor Rückgabewert (Ergebnistyp) Zugriffsrecht a) Sequenz Struktogramm: Anweisung 1 Anweisung 2 Anweisung 3 16 wahr 17) Sequenz 1 18 19 public class Vogel { private String geschlecht; private String farbe; private double spannweite; Bedingung erfüllt public Vogel () { Kann auch ohne else-Zweig sein. geschlecht = "weiblich"; farbe "blau"; spannweite = 20.00; public void setzeFarbe (String farbeNeu farbe farbeNeu; public String) gibFarbe () { |} return farbe; b) bedingte Anweisung (Fallunterscheidung) Struktogramm: Beschreibung von Abläufen durch Algorithmen Algorithmus: Ein Algorithmus ist eine Verarbeitungsvorschrift, die aus einer endlichen Folge von eindeutig ausführbaren Anweisungen besteht. Unter gleichen Voraussetzungen liefert die Ausführung eines Algorithmus stets gleiche Ergebnisse. Sequenz 2 Java-Code: Anweisung1; Anweisung2; Anweisung3; falsch Java-Code: if (Bedingung) { Sequenz1; else{ Definition der Attribute Sequenz2; Wertzuweisung VOGEL Parameter · farbe - geschlecht - spannweite + singe() + legeEi() Methodendeklaration (Signatur), (Rückgabewert ist umstritten) c) vorprüfende Wiederholung (Wiederholung mit Anfangsbedingung) Struktogramm: Java-Code: solange Bedingung erfüllt wiederhole d) nachprüfende Wiederholung (Wiederholung mit Endbedingung) Struktogramm: e) Zählschleife Struktogramm: Zähle Var von Anfangswert bis Endwert Operatoren Operator ! Sequenz solange Bedingung erfüllt ++ * 1 % & & || + <= > wiederhole Sequenz >= != Sequenz while (Bedingung) { Bedeutung kleiner als kleiner oder gleich größer als größer oder gleich gleich ungleich/ verschieden von Sequenz; Java-Code: do { Sequenz; } while (Bedingung); } Java-Code: for (int var=0; var<=Endwert; var++) { Sequenz; Rangfolge Beispiel 7 a<b 7 a <= b 7 a>b a>= b 7 8 b 8 a != b a UND Verknüpfung ODER Verknüpfung NICHT (also wenn das Gegenteil geprüft werden soll) Inkrementieren (plus 1) Dekrementieren (minus 1) multiplizieren dividieren Modulo bzw. remainder (gibt den Rest aus, der bei einer Division durch die ,,hintere" Zahl übrig bleibt) addieren subtrahieren X++ X-- x*y x/y x%5 x+y x-y Objektbeziehung / Referenzattribut Objektbeziehungen werden durch Referenzattribute realisiert, die eine Referenz auf ein anderes Objekt speichern. Objektdiagramm mit Beziehungen: spieler1: SPIELER punkte = 160 bauer1: BAUER positionX = 23 positionY= 45 SPIELER Deklaration der Referenzattribute im Klassendiagramm: int punkte BAUER bauer1 BAUER bauer2 HANDWERKER handwerker1 HANDWERKER handwerker2 SPIELER() int punkteGeben() bauer2: BAUER positionX = 38 positionY = 63 Aufrufer GruenSetzen() ampel: AMPEL Uhrzeitanzeige handwerker1: HANDWERKER positionX = 42 positionY = 63 T1 und T2 T1 und T2 FarbeSetzen("schwarz") 9 Sequenzdiagramm zum Methodenaufruf ampel.GruenSetzen() Objektkommunikation / Sequenzdiagramm Methoden sind Schnittstellen zur Kommunikation zwischen Objekten. Diese Kommunikation über Methodenaufrufe lässt sich mit Sequenzdiagrammen veranschaulichen. FarbeSetzen("schwarz") FarbeSetzen("gruen") T1 Stoppuhr mit Anzeige 00:00:00 T2 2 Zustandsdiagramm einer Stoppuhrbedienung Klassendiagramm mit Beziehungen: lampeOben: LAMPE lampeMitte: LAMPE lampeUnten: LAMPE SPIELER Stoppuhr läuft 1 Strukturierung von Abläufen mit Zustandsübergangsdiagrammen Der Zustand eines Objekts wird durch die Gesamtheit aller seiner Attributwerte festgelegt. Durch das Ändern von Attributwerten ändert sich der Zustand, das Objekt vollzieht einen Zustandsübergang. In der Programmierung erfolgt dieser durch die entsprechenden Methodenaufrufe. T1 besitzt > besitzt 0.2 0..2 BAUER HANDWERKER Beschreibung hierarchischer Klassenstrukturen durch Generalisierung und Spezialisierung 9} O O Spezialisierung O O < enthält O World E is-a Space Bullet Asteroids Beispiel: public Space () { super (...); enthält > Mover is-a Actor is-a Implementierung von Unterklassen in Java durch Aufruf des Konstruktors der Oberklasse mit dem Schlüsselwort super (...): public class Space (extends) World{ Explosion Rocket Asteroid protected double x protected double y protected double vx protected double vy Polymorphismus: Ein Attribut oder Parameter vom Datentyp einer Oberklasse kann auch eine Referenz auf ein Objekt einer Unterklasse aufnehmen. Dies nennt man Polymorphismus. In einer Unterklasse kann eine in der Oberklasse vorhandene Methode neu definiert werden. Diese Methode der Oberklasse wird in den Unterklassen überschrieben. Beim Aufruf wird dann die Methode der Klasse des ausführenden Objekts verwendet. Auch das gehört zum Polymorphismuskonzept. Generalisierung NIEDERSCHLAG {abstract} Oberklasse oder Superklasse Unterklasse public NIEDERSCHLAG(double xStart, double y Start) public abstract void zeichne() public void bewege(double zeit) Ruft Methode der Oberklasse mit gleichem Namen auf. Abstrakte Klassen Klassen, von denen keine Objekte instanziiert werden, können als abstrakt vereinbart werden. Abstrakte Klassen beschreiben, welche Methoden von allen Unterklassen aufgerufen werden können. Methoden, die in allen Unterklassen überschrieben werden, können als abstrakte Methoden in der Oberklasse ohne Methodenrumpf stehen. Die Schnittstelle einer Klasse beschreibt den öffentlich sichtbaren Teil einer Klasse, was sie leistet und wie sie benutzt werden kann, ohne dass ihre Implementierung sichtbar wird. World is-a Space //Attribute //Konstruktor public abstract class NIEDERSCHLAG { //Weitere Methoden public abstract void zeichne (); //Kein Methodenrumpf !!

Informatik /

Grundwissen Java Informatk

S

Srishti Jain  

Follow

9 Followers

 Grundwissen INFORMATIK
Objekt
Ein Exemplar von Dingen, Personen oder Begriffen der realen Welt oder der Vorstellungswelt.
Ein Objekt hat ei

Öffnen

Grundwissen Java Informatk für Gymnasium

Ähnliche Knows
Know Grundbegriff der objektorientierten Programmierung, Aufbau Deklaration, Konstruktor, Methode, Rechenoperatoren, Erhöhung und Verminderung von Werten, Einfache Auswahlanweisungen (If- Anweisungen) thumbnail

8

Grundbegriff der objektorientierten Programmierung, Aufbau Deklaration, Konstruktor, Methode, Rechenoperatoren, Erhöhung und Verminderung von Werten, Einfache Auswahlanweisungen (If- Anweisungen)

info lernzettel mit den im Titel genannten themen :)

Know Wichtige JAVA-Begriffe thumbnail

254

Wichtige JAVA-Begriffe

Erklärung aller wichtigen Java-Begriffe

Know Modellierung thumbnail

4

Modellierung

Hier Thesenpapiere zum Thema "Modellierung". Sie wurden für mein Abi 2021 von meinem Kurs zusammengestellt, daher kann ich nicht versichern, dass alles 100%ig richtig ist. Hoffentlich kann ich euch damit weiterhelfen :)

Know Informatik Lernzettel EF thumbnail

16

Informatik Lernzettel EF

Objektorientriete Modellierung, Objekte & Klassen, Datentypen, Algorithmen, Operatoren, Wiederholungen

Know Java Vererbung thumbnail

32

Java Vererbung

Das Prinzip der Vererbung in Informatik

Know Binary Search Tree und Comparable Content thumbnail

7

Binary Search Tree und Comparable Content

Hier Thesenpapiere zum Thema "Binary Search Tree". Sie wurden für mein Abi 2021 von meinem Kurs zusammengestellt, daher kann ich nicht versichern, dass alles 100%ig richtig ist. Hoffentlich kann ich euch damit weiterhelfen :)

Grundwissen INFORMATIK Objekt Ein Exemplar von Dingen, Personen oder Begriffen der realen Welt oder der Vorstellungswelt. Ein Objekt hat einen eindeutigen Namen, bestimmte Eigenschaften und reagiert mit einem definierten Verhalten auf seine Umwelt. ,,Alles ist Objekt" Klasse Eine Klasse beschreibt eine bestimmte Art von Objekten. Sie dient als „Bauplan“, in dem festgelegt ist, welche Attribute und welche Methoden die erzeugten Objekte haben. Attribut Die Eigenschaften der Objekte werden durch die Wer ihrer Attribute beschrieben. VOGEL - farbe - geschlecht - spannweite + singe() - legeEi() Attributwert: Blue Jay : VOGEL farbe = „blau"; Der Attributwert ist der momentane Wert eines Attributs und kann verändert werden. geschlecht weiblich"; spannweite = 20; ,,Bauplan" singe() legeEi() = VOGEL - farbe - geschlecht - spannweite + singe() + legeEi() Methode Objekte können auf Befehl gewisse Operationen (Methoden) ausführen. Punktnotation: Objektname. Methodenname () ; Aufruf einer Methode in der „eigenen“ Klasse >>> Methodenname() Parameter Bei vielen Methoden muss man durch ein oder mehrere Argumente (Parameter) festlegen, mit welchen Eingaben sie ausgeführt werden sollen. z.B.: public int berechne Summe (int x, int y) >>> Methode benötigt zwei Zahlen aus Eingabe z.B. berechne Summe (8,12); lokale Variablen Innerhalb von Methoden können lokale Variablen (auch: lokale Attribute) deklariert werden. Ihre Lebensdauer ist auf die Dauer der Ausführung der Methode beschränkt. Nur innerhalb der Methode kann auf sie zugegriffen werden. public int berechneSumme (int a, int b) { Modellierung: Ausschnitte der Wirklichkeit werden zielgerichtet vereinfacht und strukturiert dargestellt. Man analysiert, wie dieser Ausschnitt so dargestellt werden kann,...

Nichts passendes dabei? Erkunde andere Fachbereiche.

Mit uns zu mehr Spaß am Lernen

Lerne mit über 500.000 Lerninhalten von den besten Schüler:innen!
Vernetze dich mit anderen Schüler:innen und helft euch gegenseitig!
Bekomme bessere Noten ohne großen Aufwand!

App herunterladen

Knowunity

Schule. Endlich einfach.

App öffnen

Alternativer Bildtext:

dass er im Computer umgesetzt werden kann. Realität - Attributwerten (- Methoden) Objekte und Klassen - Diagramme Objektkarten bestehen aus - eindeutigem Objektnamen - Attributen Bsp.: Objektkarte int summe; summe = a + bi return summe; BlueJay: VOGEL farbe = „blau"; Abstraktion singe() legeEi() geschlecht weiblich"; spannweite = 20; Modell Klassenkarten bestehen aus eindeutigem Klassennamen - Attributen - - Methoden - Zugriffsmodifikator, Parameter und Rückgabewerte bei erweiterter Klassenkarte Bsp.: Klassenkarte VOGEL - farbe - geschlecht spannweite + - singe() ·legeEi() + Datentypen, Rückgabewerte und Zugriffsrechte a) primitive (elementare) Datentypen O byte, short, int, long float oder double char O O b) Referenztypen (Objekttypen) O String >>> Strings können deswegen nicht mit dem Vergleichsoperator verglichen werden, denn der Vergleichsoperator prüft, ob die Verweise gleich sind und nicht, ob die Strings gleich sind, auf die verwiesen wird. Für den Vergleich von Strings steht die Methode equals zur Verfügung) Felder O boolean O O O 3 Schubladenmodell eines Feldes Bsp: O private: public: null protected: Deklaration: Initialisierung: gewinn Wertzuweisung an 2. Stelle: 9 private int[] gewinn; c) Rückgabewerte Rückgabewerte können sowohl primitive Datentypen als auch Referenztypen sein O falls kein Wert zurückgegeben werden soll: Rückgabetyp: void O hinter dem Schlüsselwort return stehen die Werte bzw. Variablen, die zurückgegeben werden sollen. == = d) Zugriffsrechte Zugriffsrechte dienen vor allem der Datenkapselung. Datenkapselung ist bei größeren Projekten eine Voraussetzung für effiziente Zusammenarbeit. Sie sorgt dafür, dass jede Arbeitsgruppe sich nur um die Schnittstellen kümmern muss; es ist nicht nötig, über Interna der Klassen anderer Arbeitsgruppen Bescheid zu wissen. Auf das Attribut kann nur innerhalb der definierenden Klasse zugegriffen werden. Auf das Attribut kann von allen Klassen aus, sowohl von der definierenden als auch von anderen, zugegriffen werden. Das Zugriffsrecht protected erlaubt die Verwendung der Attribute der Oberklasse auch in den Unterklassen. new int [100]; (mit 100 Plätzen) int [1] = 5; Umsetzung von Klassenkarten in Java: Klassendefinition Konstruktor Rückgabewert (Ergebnistyp) Zugriffsrecht a) Sequenz Struktogramm: Anweisung 1 Anweisung 2 Anweisung 3 16 wahr 17) Sequenz 1 18 19 public class Vogel { private String geschlecht; private String farbe; private double spannweite; Bedingung erfüllt public Vogel () { Kann auch ohne else-Zweig sein. geschlecht = "weiblich"; farbe "blau"; spannweite = 20.00; public void setzeFarbe (String farbeNeu farbe farbeNeu; public String) gibFarbe () { |} return farbe; b) bedingte Anweisung (Fallunterscheidung) Struktogramm: Beschreibung von Abläufen durch Algorithmen Algorithmus: Ein Algorithmus ist eine Verarbeitungsvorschrift, die aus einer endlichen Folge von eindeutig ausführbaren Anweisungen besteht. Unter gleichen Voraussetzungen liefert die Ausführung eines Algorithmus stets gleiche Ergebnisse. Sequenz 2 Java-Code: Anweisung1; Anweisung2; Anweisung3; falsch Java-Code: if (Bedingung) { Sequenz1; else{ Definition der Attribute Sequenz2; Wertzuweisung VOGEL Parameter · farbe - geschlecht - spannweite + singe() + legeEi() Methodendeklaration (Signatur), (Rückgabewert ist umstritten) c) vorprüfende Wiederholung (Wiederholung mit Anfangsbedingung) Struktogramm: Java-Code: solange Bedingung erfüllt wiederhole d) nachprüfende Wiederholung (Wiederholung mit Endbedingung) Struktogramm: e) Zählschleife Struktogramm: Zähle Var von Anfangswert bis Endwert Operatoren Operator ! Sequenz solange Bedingung erfüllt ++ * 1 % & & || + <= > wiederhole Sequenz >= != Sequenz while (Bedingung) { Bedeutung kleiner als kleiner oder gleich größer als größer oder gleich gleich ungleich/ verschieden von Sequenz; Java-Code: do { Sequenz; } while (Bedingung); } Java-Code: for (int var=0; var<=Endwert; var++) { Sequenz; Rangfolge Beispiel 7 a<b 7 a <= b 7 a>b a>= b 7 8 b 8 a != b a UND Verknüpfung ODER Verknüpfung NICHT (also wenn das Gegenteil geprüft werden soll) Inkrementieren (plus 1) Dekrementieren (minus 1) multiplizieren dividieren Modulo bzw. remainder (gibt den Rest aus, der bei einer Division durch die ,,hintere" Zahl übrig bleibt) addieren subtrahieren X++ X-- x*y x/y x%5 x+y x-y Objektbeziehung / Referenzattribut Objektbeziehungen werden durch Referenzattribute realisiert, die eine Referenz auf ein anderes Objekt speichern. Objektdiagramm mit Beziehungen: spieler1: SPIELER punkte = 160 bauer1: BAUER positionX = 23 positionY= 45 SPIELER Deklaration der Referenzattribute im Klassendiagramm: int punkte BAUER bauer1 BAUER bauer2 HANDWERKER handwerker1 HANDWERKER handwerker2 SPIELER() int punkteGeben() bauer2: BAUER positionX = 38 positionY = 63 Aufrufer GruenSetzen() ampel: AMPEL Uhrzeitanzeige handwerker1: HANDWERKER positionX = 42 positionY = 63 T1 und T2 T1 und T2 FarbeSetzen("schwarz") 9 Sequenzdiagramm zum Methodenaufruf ampel.GruenSetzen() Objektkommunikation / Sequenzdiagramm Methoden sind Schnittstellen zur Kommunikation zwischen Objekten. Diese Kommunikation über Methodenaufrufe lässt sich mit Sequenzdiagrammen veranschaulichen. FarbeSetzen("schwarz") FarbeSetzen("gruen") T1 Stoppuhr mit Anzeige 00:00:00 T2 2 Zustandsdiagramm einer Stoppuhrbedienung Klassendiagramm mit Beziehungen: lampeOben: LAMPE lampeMitte: LAMPE lampeUnten: LAMPE SPIELER Stoppuhr läuft 1 Strukturierung von Abläufen mit Zustandsübergangsdiagrammen Der Zustand eines Objekts wird durch die Gesamtheit aller seiner Attributwerte festgelegt. Durch das Ändern von Attributwerten ändert sich der Zustand, das Objekt vollzieht einen Zustandsübergang. In der Programmierung erfolgt dieser durch die entsprechenden Methodenaufrufe. T1 besitzt > besitzt 0.2 0..2 BAUER HANDWERKER Beschreibung hierarchischer Klassenstrukturen durch Generalisierung und Spezialisierung 9} O O Spezialisierung O O < enthält O World E is-a Space Bullet Asteroids Beispiel: public Space () { super (...); enthält > Mover is-a Actor is-a Implementierung von Unterklassen in Java durch Aufruf des Konstruktors der Oberklasse mit dem Schlüsselwort super (...): public class Space (extends) World{ Explosion Rocket Asteroid protected double x protected double y protected double vx protected double vy Polymorphismus: Ein Attribut oder Parameter vom Datentyp einer Oberklasse kann auch eine Referenz auf ein Objekt einer Unterklasse aufnehmen. Dies nennt man Polymorphismus. In einer Unterklasse kann eine in der Oberklasse vorhandene Methode neu definiert werden. Diese Methode der Oberklasse wird in den Unterklassen überschrieben. Beim Aufruf wird dann die Methode der Klasse des ausführenden Objekts verwendet. Auch das gehört zum Polymorphismuskonzept. Generalisierung NIEDERSCHLAG {abstract} Oberklasse oder Superklasse Unterklasse public NIEDERSCHLAG(double xStart, double y Start) public abstract void zeichne() public void bewege(double zeit) Ruft Methode der Oberklasse mit gleichem Namen auf. Abstrakte Klassen Klassen, von denen keine Objekte instanziiert werden, können als abstrakt vereinbart werden. Abstrakte Klassen beschreiben, welche Methoden von allen Unterklassen aufgerufen werden können. Methoden, die in allen Unterklassen überschrieben werden, können als abstrakte Methoden in der Oberklasse ohne Methodenrumpf stehen. Die Schnittstelle einer Klasse beschreibt den öffentlich sichtbaren Teil einer Klasse, was sie leistet und wie sie benutzt werden kann, ohne dass ihre Implementierung sichtbar wird. World is-a Space //Attribute //Konstruktor public abstract class NIEDERSCHLAG { //Weitere Methoden public abstract void zeichne (); //Kein Methodenrumpf !!