Objektorientierte Programmierung. Objektorientierte Programmierung. Klasse. Objekt. Beispiel: Sportfest1. Methode. Eine Einführung mit BlueJ

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "Objektorientierte Programmierung. Objektorientierte Programmierung. Klasse. Objekt. Beispiel: Sportfest1. Methode. Eine Einführung mit BlueJ"

Transkript

1 Objektorientierte Programmierung Objektorientierte Programmierung Eine Einführung mit BlueJ stellt die Daten, ihre Struktur und ihre Beziehungen zueinander in den Vordergrund. Weniger im Blickpunkt: die Art der Verarbeitung, das Prozedurale, die Algorithmik. Dipl. Inf. Sigrid Weil 1 Kernthemen: Objekte, Klassen und Methoden Beziehungen zwischen Objekten und Klassen Kommunikation (Nachrichtenaustausch) zwischen Objekten 2 Objekt Klasse ist ein Modell für ein Objekt der realen Welt hat einen Zustand, der durch Attribute beschrieben wird hat ein Verhalten, das durch Methoden beschrieben wird. Attribute beschreiben somit die Eigenschaften eines Objekts. Methoden beschreiben die Reaktion eines Objektes auf Nachrichten. dient der Kategorisierung von Objekten beschreibt alle Objekte mit gleichartigen Attributen und Methoden. Ein Objekt ist ein einzelnes Exemplar (eine Instanz ) einer Klasse. Eine Klasse ist eine Art Bauplan für Objekte. 3 4 Methode beschreibt die Reaktion eines Objektes auf eine Nachricht dient der Kommunikation mit anderen Objekten (auch anderer Klassen) regelt den Zugriff auf die Attribute eines Objektes Methoden können (Eingabe-)Parameter und Rückgabewert haben Beispiel: Sportfest1 Die Teilnehmer eines Sportfestes sollen als Objekte modelliert werden. Teilnehmer sind gekennzeichnet durch Name Geburtsjahr Startnummer erreichte Punkte in den einzelnen Wettbewerben Mögliche Aktionen sollen sein Punkte für eine Disziplin eintragen Gesamtsumme der erreichten Punkte berechnen 5 6

2 Beispiel 1 als Klassendiagramm String int int int[ ] Teilnehmer name geburtsjahr startnummer punkte void punkteeintragen ( int wettbewerbsnummer, int erreichtepunktzahl) int summe ( ) 7 Klassendefinition public class Klassenname { // Definition der Attribute // Definition der Methoden Das Schlüsselwort class leitet die Definition einer Klasse ein. Das Schlüsselwort public regelt Zugriffsrechte. Der Klassenname ist frei wählbar. Innerhalb der geschweiften Klammern werden Attribute und Methoden (in beliebiger Reihenfolge) definiert. 8 Definition der Attribute Datentyp name; Die Definiton von Attributen sieht wie eine Variablendeklaration aus: Es wird der Datentyp des Attributs angegeben, dann der Name. Die Definition wird mit einem Semikolon abgeschlossen. Der Attributname ist frei wählbar. Als Typ kommen die elementaren Datentypen (int, double, char, boolean,...) in Frage, aber auch selbstdefinierte Klassen oder arrays (Felder). 9 Definition der Methoden Rückgabetyp methodenname (Parameterliste){ // Definition lokaler Variablen // Anweisungen Eine Methodendefinition besteht aus Kopf und Rumpf: Im Methodenkopf werden der Name der Methode, eine Liste der Eingabeparameter (in runden Klammern) und der Datentyp des Rückgabewertes angegeben. Im Methodenrumpf (eingeschlossen von geschweiften Klammern) werden lokale Variablen definiert und Anweisungen gegeben. 10 Methodenkopf Methodenrumpf Die Parameterliste ist eine Aufzählung von formalen Parametern mit ihren Typen. Die Parameterliste kann auch leer sein (, die runden Klammern müssen dann trotzdem geschrieben werden)! Die Parameter können elementare Typen, Klassen oder arrays als Typ haben. Der Rückgabetyp kann ein einfacher Datentyp oder eine Klasse sein oder leer (void) sein. Lokale Variablen werden (wie Attribute einer Klasse) durch Angabe des Typs und des Namens definiert. Als Typen sind alle elementaren Typen, Klassen und arrays möglich. Anweisungen sind Wertzuweisungen oder Methodenaufrufe oder durch Sequenz, Verzweigung oder Schleifen aus solchen zusammengesetzt

3 Aufgabenblatt 1 Beispiel 1 als Java-Code Entwurf einer Java-Klasse BlueJ erstes Projekt BlueJ Objekte erzeugen BlueJ Objekt betrachten und verändern Datei mit dem Editor erstellen und unter Teilnehmer.java speichern Beispiel 1 in BlueJ Erzeugung von Objekten mit BlueJ Das BlueJ-Fenster zeigt alle Klassen, die zu einem Projekt gehören und (später) ihre Abhängigkeiten. Ein Rechts-Mausklick auf das Klassensymbol öffnet ein Fenster, in dem der Operator new ausgewählt werden kann Erzeugung von Objekten mit BlueJ Hier wurden zwei Objekte mit den Variablen -namen anna bzw. otto erzeugt. Zustand eines Objektes Rechtsklick auf ein Objekt öffnet ein Fenster, in dem u.a. der BlueJ-Inspektor aufgerufen werden kann. Er zeigt den Zustand des Objektes, also die aktuelle Belegung der Attributvariablen. Wir sehen: alle Attribute sind mit der 0 des jeweiligen Datentyps vorbelegt

4 Methodenaufruf in BlueJ Beispiel nach dem Eintragen von Punkten für den 1. und den 3. Wettbewerb In demselben Fenster (geöffnet durch Rechtsklick auf das Objektsymbol) können auch die Methoden aufgerufen werden, die für das Objekt definiert sind. Wir tragen für die erste Disziplin die Punktzahl 12 ein: Aufruf der Methode summe (für das Objekt otto) Noch einmal: Zustand eines Objektes 21 Wir sehen: alle Attribute sind mit der 0 des jeweiligen Datentyps vorbelegt. Die Belegung des arrays punkte können wir durch die Methode punkteeintragen ändern. Wie können wir die Attribute name, geburtsjahr und startnummer mit sinnvollen Werten belegen? 22 Wie kann ich Attribute mit Werten belegen? Belegung von Attributwerten durch Methoden durch Methoden beim Erzeugen des Objektes ( durch direkte Wertzuweisung ) Ein Beispiel hierfür kennen wir schon: die Methode punkteeintragen(int nr, int n). Wir können solche Methoden auch für die Attribute name, geburtsjahr und startnummer schreiben: 23 24

5 Beispiel: Sportfest2 Wir erweitern die Klasse Teilnehmer um drei Methoden : public void nameaendern (String neuername){ name = neuername; public void gebjaendern (int neuesgebj){ geburtsjahr = neuesgebj; Beispiel: Sportfest2 Damit sind jetzt folgende Aufrufe möglich: Teilnehmer anna = new Teilnehmer(); anna.nameaendern("anna Anders"); anna.gebjaendern(1992); anna.startnummeraendern(1); public void startnummeraendern (int neuenummer){ startnummer = neuenummer; 25 Bemerkung: Werte von Strings müssen immer (auch bei der Eingabe über das BlueJ-Fenster) in "Gänsefüßchen" eingeschlossen werden. 26 Noch einmal: Zustand eines Objektes Belegen von Attributwerten bei der Erzeugung des Objektes Danach sehen die Attributwerte so aus: Achtung! Durch die Methode nameaendern wird die Belegung des Attributs name geändert. Der Variablenname selber (anna) bleibt davon unberührt. Bei der Erzeugung eines Objektes mit dem new- Operator wird eine spezielle Methode, der sog. Konstruktor aufgerufen. Wenn der Programmierer keinen Konstruktor angegeben hat, wird automatisch ein Standard- Konstruktor angelegt. Durch explizite Angabe eines Konstruktors können wir Einfluß darauf nehmen, was bei der Erzeugung eines Objektes geschieht Konstruktor public Klassenname(Parameterliste){ // Anweisungen Ein Konstruktor ist eine spezielle Methode. Der Name des Konstruktors ist identisch mit dem Klassennamen. Die Angabe des Rückgabetyps entfällt. (Es wird immer ein Objekt der Klasse erzeugt und ein Verweis darauf zurückgegeben.) Im Methodenrumpf können beliebige Anweisungen stehen. Dem Konstruktor können Parameter übergeben werden. 29 Standardkonstruktor public Klassenname(){ // keine Anweisungen Wird vom Programmierer kein Konstruktor angegeben, so wird von Java der Standardkonstruktor verwendet. Er enthält keine Eingabeparameter und keine Anweisungen. 30

6 Konstruktor für die Klasse Teilnehmer Wir wollen erreichen, dass die Werte für die Attribute name, geburtsjahr und startnummer gleich bei der Erzeugung eines Objektes belegt werden. Der Name und das Geburtsjahr des Teilnehmers/der Teilnehmerin sollen als Parameter übergeben werden. Die Startnummer soll den default-wert 1 erhalten. Aufruf eines Konstruktors Der Aufruf eines von uns selbst definierten Konstruktors sieht genauso aus wie ein normaler Methodenaufruf. Durch Rechtsklick auf das Objektsymbol kann man den Konstruktor auswählen und Werte für die Parameter eingeben. public Teilnehmer(String teilnehmername, int gebjahr){ name = teilnehmername; geburtsjahr = gebjahr; startnummer = 1; Beispiel 2: Nach Aufruf des Konstruktors Überladen von Methoden/Konstruktoren Was ist, wenn wir auf den Standard-Konstruktor nicht verzichten wollen, sondern unseren eigenen nur zusätzlich als weitere Möglichkeit anbieten wollen? Kein Problem! Aufgabenblatt 2 Methoden können gleich heißen, wenn sie sich in der Parameterstruktur unterscheiden (Anzahl oder Typen der Parameter). Beim Aufruf ist dann durch die Angabe der Parameter klar, welche Variante der Methode ausgeführt wird. Set-Methoden einfügen 2 Konstruktoren definieren Objekte mit Konstruktor erzeugen Das gilt genauso für Konstruktoren

7 Die Startnummer soll nun automatisch vergeben werden. Der erste Teilnehmer erhält die Nummer 1, alle folgenden jeweils die nächste Zahl. Dazu muss braucht man eine Variable, die sagt, wieviele Teilnehmer sich schon angemeldet haben. Die Anzahl der erzeugten Objekte ist eine Klasseneigenschaft! 37 Beispiel: Sportfest3 Wir wollen mitzählen, wieviele Teilnehmer sich angemeldet haben. Dazu fügen wir in der Klassendefinition die Deklaration einer Klassenvariablen anzahlteilnehmer ein, die wir mit 0 initialisieren. public class Teilnehmer { static int anzahlteilnehmer = 0; // weiter wie bisher: String name; int geburtsjahr; // Klassenvariable Klassenvariable existieren nur einmal! anzahlteilnehmer 0 stellen Eigenschaften einer Klasse, nicht eines einzelnen Objektes dar existieren nur einmal pro Klasse sind unabhängig von einzelnen Objekten werden definiert, indem bei der Deklaration das Schlüsselwort static vorangestellt wird 39 otto anna name geburtsjahr startnummer 0 0 punkte name geburtsjahr startnummer 0 0 punkte Beispiel: Sportfest3 Zum Mitzählen muss diese Variable bei jedem Erzeugen eines neuen Teilnehmers (also bei jedem Aufruf des Konstruktors) um 1 erhöht werden. Wir können diese Variable nun dazu benutzen, die Startnummern automatisch zu vergeben: public Teilnehmer(String teilnehmername, int gebjahr){ anzahlteilnehmer = anzahlteilnehmer + 1; name = teilnehmername; geburtsjahr = gebjahr; startnummer = anzahlteilnehmer; Klassenmethoden stehen der Klasse als Ganzem zur Verfügung existieren nur einmal pro Klasse sind unabhängig von einzelnen Objekten werden definiert, indem bei der Deklaration das Schlüsselwort static vorangestellt wird können ausgeführt werden, ohne dass ein Objekt der Klasse erzeugt wurde 41 42

8 Beispiel: Sportfest3 Wir wünschen uns eine Methode, die den aktuellen Anmeldestand ausgibt. Die Methode benötigt keine Eingabeparameter, liefert keinen Wert zurück und soll zeigeanmeldestand heißen. public static void zeigeanmeldestand(){ System.out.println ("Zur Zeit sind " + anzahlteilnehmer + " Teilnehmer angemeldet."); Zugriff auf Klassenvariable Innerhalb der Klasse genügt die Angabe des Variablennamens. Bei einem Zugriff aus einer anderen Klasse heraus ist der Klassenname und ein Punkt voranzustellen. Beispiel: Teilnehmer.anzahlTeilnehmer =... (Für Methoden analog) Probleme? Es gibt viele Objekte Jedes dieser Objekte hat ein Attribut "startnummer" Dieses Attribut hat bei jedem Objekt einen anderen Wert Wie wird zwischen diesen verschiedenen "Variablen" unterschieden? Zugriff auf Objektattribute von innen Innerhalb von Instanzmethoden (das sind Methoden, die wie alle, die wir bisher kennengelernt haben, an ein Objekt gebunden sind,) kann auf Attribute einfach durch Nennung des Variablennamens zugegriffen werden: geburtsjahr =...; System.out.println(name); Zugriff auf Objektattribute von außen Der Zugriff (von außerhalb) auf eine Attributsvariable eines Objektes erfolgt durch Nennung des Objektnamens, gefolgt von einem Punkt und dem Namen der Attributsvariablen. Bsp.: anna.geburtsjahr = 1992; System.out.println(anna.name); 47 Zugriff "von innen" mit this Um den Bezug zum Objekt bewußt herzustellen oder um Namenskonflikte mit anderen Größen zu vermeiden, kann auf das eigene Objekt mit dem Schlüsselwort this Bezug genommen werden. Wir hätten in allen unseren Methoden schreiben können: this.geburtsjahr =...; System.out.println(this.name); Andere Größen können sein: lokale Variablen oder Parameter. 48

9 Sportfest3 Aufgabenblatt 3 Klassenvariable für die Anzahl der Teilnehmer einfügen Konstruktor anpassen zum richtigen Mitzählen und automatischen Erzeugen der Startnummer Klassenmethode zum Anzeigen des Anmeldestands definieren Umgang mit mehreren Klassen Wir wollen auch Wettbewerbe modellieren. Dazu wird eine Klasse Wettbewerb definiert: Attribute: Beschreibung (String) maximale Teilnehmerzahl (int) Anzahl der angemeldeten Teilnehmer (int) Liste der angemeldeten Teilnehmer (array) Methoden: einen Teilnehmer in die Teilnehmerliste eintragen überprüfen, ob es noch freie Plätze gibt Die Klasse "Wettbewerb" Beschreibung: Maximale Teilnehmerzahl: Teilnehmer: : : Beispiel Sportfest4: Wettbewerb Korrespondenzen zwischen Klassen Die Klasse Wettbewerb benutzt die Klasse Teilnehmer wie einen Datentyp. Aber auch umgekehrt kann nun die Klasse Teilnehmer auf die Klasse Wettbewerb Bezug nehmen: Teilnehmer können sich für Wettbewerbe anmelden (Aufruf einer Methode der Klasse Wettbewerb) für jeden Teilnehmer soll vermerkt werden, für welchen Wettbewerb er angemeldet ist (array mit Basistyp Wettbewerb) 53 54

10 Datenblatt der Klasse Teilnehmer: Beispiel Sportfest4: Teilnehmer Es wird ein Feld gemeldet vom Typ Wettbewerb als Attribut eingefügt. name geburtsjahr startnummer Anna 1992 Wir müssen ein Attribut anzahlgemeldet einfügen, das mitzählt, für wieviele Wettbewerbe ein Teilnehmer angemeldet ist. gemeldet punkte Laufen Springen Beispiel Sportfest4 in BlueJ: Die gegenseitige Abhängigkeit der Klassen wird durch Pfeile angezeigt. 57 Teilnehmer melden sich zu Wettbewerben an Eine Methode, die es einem Teilnehmer ermöglicht, sich zu einem Wettbewerb anzumelden, muss prüfen, ob der Teilnehmer sich nicht schon für die maximale Anzahl an Wettbewerben angemeldet hat, prüfen, ob im gewünschten Wettbewerb noch Startplätze frei sind, den Wettbewerb im array gemeldet des Teilnehmers eintragen, den Teilnehmer in die Starterliste starter des Wettbewerbs eintragen. 58 Beispiel Sportfest4: Die Methode anmelden der Klasse teilnehmer Für Teilnehmer werden Punkte eingetragen An die Methode punkteeintragen soll nun nicht mehr die Nummer des Wettbewerbs, sondern eine Referenz auf den Wettbewerb selbst übergeben werden. Um die richtige Position im array punkte zu finden, muss der übergebene Parameter mit den Einträgen im array gemeldet verglichen werden

11 Beispiel Sportfest4: Die Methode punkteeintragen der Klasse teilnehmer Aufgabenblatt 4 Klasse Wettbewerb definieren Klasse Teilnehmer anpassen (*) Methode einfügen, die den aktuell führenden Teilnehmer eines Wettbewerbs ermittelt (**) Methode einfügen, die den Teilnehmer mit der insgesamt höchsten Punktsumme ermittelt Ausblick Ober- und Unter -Klassen Vererbung Polymorphie... Viel Spaß noch mit Java! 63

Java Einführung Methoden in Klassen

Java Einführung Methoden in Klassen Java Einführung Methoden in Klassen Lehrziel der Einheit Methoden Signatur (=Deklaration) einer Methode Zugriff/Sichtbarkeit Rückgabewerte Parameter Aufruf von Methoden (Nachrichten) Information Hiding

Mehr

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden.

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden. Grundwissen Informatik Objekt Attribut Methoden Als Objekte bezeichnet man alle Gegenstände, Dinge, Lebewesen, Begriffe oder Strukturen unserer Welt ( Autos, Räume, Bakterien, Lehrer, Schüler, Kunden,

Mehr

C++ - Objektorientierte Programmierung Konstruktoren und Destruktoren

C++ - Objektorientierte Programmierung Konstruktoren und Destruktoren C++ - Objektorientierte Programmierung Konstruktoren und Destruktoren hat eine Kantenlänge hat eine Füllfarbe Kantenlänge setzen Füllfarbe lesen Volumen berechnen Leibniz Universität IT Services Anja Aue

Mehr

Einführung in die Java- Programmierung

Einführung in die Java- Programmierung Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Wichtig... Mittags keine Pommes... Praktikum A 230 C 207 (Madeleine + Esma) F 112 F 113

Mehr

Javakurs für Anfänger

Javakurs für Anfänger Javakurs für Anfänger Einheit 02: Klassen & Objekte Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Klassen Grundstruktur einer Java-Klasse Eigenschaften (Attribute) Variablen

Mehr

Repetitorium Informatik (Java)

Repetitorium Informatik (Java) Repetitorium Informatik (Java) Tag 6 Lehrstuhl für Informatik 2 (Programmiersysteme) Übersicht 1 Klassen und Objekte Objektorientierung Begrifflichkeiten Deklaration von Klassen Instanzmethoden/-variablen

Mehr

Tag 7 Repetitorium Informatik (Java)

Tag 7 Repetitorium Informatik (Java) Tag 7 Repetitorium Informatik (Java) Dozent: Patrick Kreutzer Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2017/2018 Informatik-Repetitorium

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 34 Einstieg in die Informatik mit Java Klassen mit Instanzmethoden Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 34 1 Definition von Klassen 2 Methoden 3 Methoden

Mehr

Java Kurs für Anfänger Einheit 4 Klassen und Objekte

Java Kurs für Anfänger Einheit 4 Klassen und Objekte Java Kurs für Anfänger Einheit 4 Klassen und Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 13. Juni 2009 Inhaltsverzeichnis klasse

Mehr

Übersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung

Übersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung Übersicht 3.1 Modell Konto 3.2 Modell Konto - Erläuterungen 3.3 Benutzer Ein- und Ausgabe mit Dialogfenster I 3.4 Benutzer Ein- und Ausgabe mit Dialogfenster II 3.5 Klassen- und Objekteigenschaften des

Mehr

3 Objektorientierte Konzepte in Java

3 Objektorientierte Konzepte in Java 3 Objektorientierte Konzepte in Java 3.1 Klassendeklarationen Fragen an die Klassendeklaration: Wie heißt die Klasse? Wer darf auf die Klasse und ihre Attribute/Methoden zugreifen? Ist die Klasse eine

Mehr

Software Engineering Klassendiagramme Einführung

Software Engineering Klassendiagramme Einführung Software Engineering Klassendiagramme Einführung Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Aufgabe Erstellen Sie eine Klasse Person in Java. Jede Person verfügt

Mehr

Computeranwendung und Programmierung (CuP)

Computeranwendung und Programmierung (CuP) Computeranwendung und Programmierung (CuP) VO: Peter Auer (Informationstechnologie) UE: Norbert Seifter (Angewandet Mathematik) Organisatorisches (Vorlesung) Vorlesungszeiten Montag 11:15 12:45 Freitag

Mehr

Vorkurs C++ Programmierung

Vorkurs C++ Programmierung Vorkurs C++ Programmierung Klassen Letzte Stunde Speicherverwaltung automatische Speicherverwaltung auf dem Stack dynamische Speicherverwaltung auf dem Heap new/new[] und delete/delete[] Speicherklassen:

Mehr

5.5.8 Öffentliche und private Eigenschaften

5.5.8 Öffentliche und private Eigenschaften 5.5.8 Öffentliche und private Eigenschaften Schnittstellen vs. Implementierungen: Schnittstelle einer Klasse beschreibt, was eine Klasse leistet und wie sie benutzt werden kann, ohne dass ihre Implementierung

Mehr

C++ - Objektorientierte Programmierung Konstante und statische Elemente

C++ - Objektorientierte Programmierung Konstante und statische Elemente C++ - Objektorientierte Programmierung Konstante und statische Elemente hat eine Kantenlänge hat eine Füllfarbe Kantenlänge setzen Füllfarbe lesen Volumen berechnen Leibniz Universität IT Services Anja

Mehr

einkonto.zahle(+100); //Transaktion Einzahlung einkonto.zahle(-20); //Transaktion Auszahlung einkonto.zahle(+30); //Transaktion Einzahlung

einkonto.zahle(+100); //Transaktion Einzahlung einkonto.zahle(-20); //Transaktion Auszahlung einkonto.zahle(+30); //Transaktion Einzahlung PIWIN I Kap. 7 Objektorientierte Programmierung - Einführung 28 Testklasse public class TestGirokonto { public static void main(string[] args) { // erzeuge neues Konto Girokonto einkonto = new Girokonto();

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum

Mehr

Verhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {...

Verhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {... PIWIN I Kap. 8 Objektorientierte Programmierung - Vererbung 31 Schlüsselwort: final Verhindert, dass eine Methode überschrieben wird public final int holekontostand() {... Erben von einer Klasse verbieten:

Mehr

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java: Technische Informatik für Ingenieure (TIfI) WS 2005/2006, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Datenstrukturen 9. Datenstrukturen Daten zusammenfassen

Mehr

Javakurs 2013 Objektorientierung

Javakurs 2013 Objektorientierung Javakurs 2013 Objektorientierung Objektorientierte Programmierung I Armelle Vérité 7 März 2013 Technische Universität Berlin This work is licensed under the Creative Commons Attribution-ShareAlike 3.0

Mehr

7. Übung Informatik II - Objektorientierte Programmierung

7. Übung Informatik II - Objektorientierte Programmierung 7. Übung Informatik II - Objektorientierte Programmierung 29. Mai 2015 Inhalt 1 2 3 Übersicht 1 2 3 Idee Menschen nehmen die Welt in Form von Objekten wahr manche Objekte haben gleiche Eigenschaften, hierüber

Mehr

Einführung in die objektorientierte Programmierung mit Java. Klausur am 19. Oktober 2005

Einführung in die objektorientierte Programmierung mit Java. Klausur am 19. Oktober 2005 Einführung in die objektorientierte Programmierung mit Java Klausur am 19. Oktober 2005 Matrikelnummer: Nachname: Vorname: Semesteranzahl: Die Klausur besteht aus drei Frageblöcken zu den Inhalten der

Mehr

1 Klassen und Objekte

1 Klassen und Objekte 1 Klassen und Objekte Datentyp - Spezifikation des Typs von Datenobjekten Datenstruktur - logische Ordnung von Elementen eines Datentyps - zur (effizienten) Speicherung, Verwaltung, Zugriff - auf die Elemente

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 27 Einstieg in die Informatik mit Java Klassen als Datenstrukturen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 27 1 Überblick: Klassen als Datenstruktur 2 Vereinbarung

Mehr

Folge 18 - Vererbung

Folge 18 - Vererbung Workshop Folge 18 - Vererbung 18.1 Ein einfacher Fall der Vererbung Schritt 1 - Vorbereitungen Besorgen Sie sich - vielleicht aus einer der Übungen der Folge 17 - ein fertiges und lauffähiges Listenprojekt,

Mehr

Methoden und Wrapperklassen

Methoden und Wrapperklassen Methoden und Wrapperklassen CoMa-Übung IV TU Berlin 06.11.2012 CoMa-Übung IV (TU Berlin) Methoden und Wrapperklassen 06.11.2012 1 / 24 Themen der Übung 1 Methoden 2 Wrapper-Klassen CoMa-Übung IV (TU Berlin)

Mehr

PIWIN I. Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I. Vorlesung 3 SWS WS 2007/2008

PIWIN I. Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I. Vorlesung 3 SWS WS 2007/2008 PIWIN I Kap. 7 Objektorientierte Programmierung - Einführung 1 PIWIN I Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I Vorlesung 3 SWS WS 2007/2008 FB Informatik

Mehr

5.4 Klassen und Objekte

5.4 Klassen und Objekte 5.4 Klassen und Objekte Zusammenfassung: Projekt Figuren und Zeichner Figuren stellt Basisklassen für geometrische Figuren zur Verfügung Zeichner bietet eine übergeordnete Klasse Zeichner, welche die Dienstleistungen

Mehr

Java Einführung Klassendefinitionen

Java Einführung Klassendefinitionen Java Einführung Klassendefinitionen Inhalt dieser Einheit Java-Syntax Klassen definieren Objekte instanziieren Instanzvariable deklarieren Klassenvariable deklarieren 2 Klassen definieren In der Problemanalyse

Mehr

2. Unterprogramme und Methoden

2. Unterprogramme und Methoden 2. Unterprogramme und Methoden Durch Methoden wird ausführbarer Code unter einem Namen zusammengefasst. Dieser Code kann unter Verwendung von sogenannten Parametern formuliert sein, denen später beim Aufruf

Mehr

Folienpaket 7 Themenschwerpunkte: Methoden in OOP /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

Folienpaket 7 Themenschwerpunkte: Methoden in OOP /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4 Folienpaket 7 Themenschwerpunkte: Methoden in OOP 284 09/2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4 Eine Klasse entwerfen Eine Klasse enthält folgende Information: Name der Klasse (ist auch der

Mehr

EINI WiMa/LW. Einführung in die Informatik für Naturwissenschaftler und Ingenieure. Vorlesung 2 SWS WS 11/12

EINI WiMa/LW. Einführung in die Informatik für Naturwissenschaftler und Ingenieure. Vorlesung 2 SWS WS 11/12 EINI WiMa/LW Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 11/12 Fakultät für Informatik Technische Universität Dortmund lars.hildebrand@udo.edu http://ls1-www.cs.uni-dortmund.de

Mehr

Kapitel 9. Programmierkurs. Attribute von Klassen, Methoden und Variablen. 9.1 Attribute von Klassen, Methoden und Variablen

Kapitel 9. Programmierkurs. Attribute von Klassen, Methoden und Variablen. 9.1 Attribute von Klassen, Methoden und Variablen Kapitel 9 Programmierkurs Birgit Engels Anna Schulze Zentrum für Angewandte Informatik Köln Objektorientierte Programmierung Attribute von Klassen, Methoden und Variablen Interfaces WS 07/08 1/ 18 2/ 18

Mehr

Arbeiten mit BlueJ. Objektorientiertes Programmieren in Java mit BlueJ

Arbeiten mit BlueJ. Objektorientiertes Programmieren in Java mit BlueJ Arbeiten mit BlueJ Compilieren, Editieren, Objekte erzeugen, Methoden aufrufen, Objekte inspizieren, vorhandene Klassen benutzen, eigene Klassen und Methoden erstellen In BlueJ geht es einfach BlueJ durch

Mehr

Themen der Übung. Methoden und Wrapperklassen. Vorteile von Methoden. Methoden. Grundlagen

Themen der Übung. Methoden und Wrapperklassen. Vorteile von Methoden. Methoden. Grundlagen Themen der Übung 1 Organisatorisches Methoden und Wrapperklassen 2 Methoden 3 Wrapper-Klassen CoMa-Übung IV TU Berlin 07.11.2012 Organisatorisches: Im Pool nur auf die Abgabeliste setzen, wenn ihr wirklich

Mehr

Implementieren von Klassen

Implementieren von Klassen Implementieren von Klassen Felder, Methoden, Konstanten Dr. Beatrice Amrhein Überblick Felder/Mitglieder (Field, Member, Member-Variable) o Modifizierer Konstanten Methoden o Modifizierer 2 Felder und

Mehr

Java für Bauingenieure

Java für Bauingenieure 1 JAVA für Bauingenieure Alexander Karakas SS 2008 Objektorientierte Programmierung 30.04.2008, CIP Pool Objektorientierte Programmierung Übersicht 2 Klasse und Objekt Polymorphismus und Vererbung Klassen

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java objektorientierte Programmierung 2 2 Zusammenhang Klasse-Datei In jeder *.java Datei kann es genau eine public-klasse geben wobei Klassen- und Dateiname übereinstimmen. Es können

Mehr

3. Klassen Statische Komponenten einer Klasse. Klassenvariablen

3. Klassen Statische Komponenten einer Klasse. Klassenvariablen Klassenvariablen Wir wollen die Zahl der instantiierten Studentenobjekte zählen. Dies ist jedoch keine Eigenschaft eines einzelnen Objektes. Vielmehr gehört die Eigenschaft zu der Gesamtheit aller Studentenobjekte.

Mehr

Java Kurs für Anfänger Einheit 5 Methoden

Java Kurs für Anfänger Einheit 5 Methoden Java Kurs für Anfänger Einheit 5 Methoden Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 22. Juni 2009 Inhaltsverzeichnis Methoden

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung Ein Computerprogramm besteht aus Funktionen (Programmabschnitten, die etwas tun) und Variablen (Speicherplätzen für Informationen). Werden Funktionen aktiviert, verändern

Mehr

Programmieren Tutorium

Programmieren Tutorium Programmieren Tutorium Tom Schildhauer Tutorium 12 Universität Karlsruhe (TH) Institut für Programmstrukturen und Datenorganisation (IPD) Lehrstuhl Programmierparadigmen WS 2008/2009 c 2008 by Tom Schildhauer,

Mehr

Programmieren in C/C++ und MATLAB

Programmieren in C/C++ und MATLAB Programmieren in C/C++ und MATLAB Christian-Albrechts-Universität zu Kiel CAU 8-1 Objektorientiertes Programmieren Die Programme, die bisher in diesem Kurs verwendet wurden, sind alle klein und überschaubar

Mehr

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI Universität Osnabrück Drei-Schichten-Architektur 3 - Objektorientierte Programmierung in Java Vorlesung 6: 3-Schichten-Architektur Fachkonzept - GUI SS 2005 Prof. Dr. F.M. Thiesing, FH Dortmund Ein großer

Mehr

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 22

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 22 Kapitel 19 Vererbung, UML Seite 1 von 22 Vererbung - Neben der Datenabstraktion und der Datenkapselung ist die Vererbung ein weiteres Merkmal der OOP. - Durch Vererbung werden die Methoden und die Eigenschaften

Mehr

C# - Einführung in die Programmiersprache Methoden. Leibniz Universität IT Services

C# - Einführung in die Programmiersprache Methoden. Leibniz Universität IT Services C# - Einführung in die Programmiersprache Methoden Leibniz Universität IT Services 02.07.12 Methoden... sind Subroutinen in einer Klasse. können einen Wert an den Aufrufer zurückgeben. verändern die Eigenschaften

Mehr

Institut für Programmierung und Reaktive Systeme. Java 6. Markus Reschke

Institut für Programmierung und Reaktive Systeme. Java 6. Markus Reschke Institut für Programmierung und Reaktive Systeme Java 6 Markus Reschke 13.10.2014 OOP Objekte = Verhalten (durch Methoden) + Daten (durch Attribute) Klassen = Baupläne für Objekte Kapselung von Programmteilen

Mehr

Klassenvariablen, Klassenmethoden

Klassenvariablen, Klassenmethoden Einstieg in die Informatik mit Java, Vorlesung vom 11.12.07 Übersicht 1 Klassenmethoden 2 Besonderheiten von Klassenmethoden 3 Aufruf einer Klassenmethode 4 Hauptprogrammparameter 5 Rekursion Klassenmethoden

Mehr

PIWIN 1 Übung Blatt 5

PIWIN 1 Übung Blatt 5 Fakultät für Informatik Wintersemester 2008 André Gronemeier, LS 2, OH 14 Raum 307, andre.gronemeier@cs.uni-dortmund.de PIWIN 1 Übung Blatt 5 Ausgabedatum: 19.12.2008 Übungen: 12.1.2009-22.1.2009 Abgabe:

Mehr

Modellierung und Programmierung 1

Modellierung und Programmierung 1 Modellierung und Programmierung 1 Prof. Dr. Sonja Prohaska Computational EvoDevo Group Institut für Informatik Universität Leipzig 9. Dezember 2015 Wiederholung Referenzdatentypen reference [0] M datatype

Mehr

Bedienung von BlueJ. Klassenanzeige

Bedienung von BlueJ. Klassenanzeige Im Folgenden werden wichtige Funktionen für den Einsatz von BlueJ im Unterricht beschrieben. Hierbei wird auf den Umgang mit Projekten, Klassen und Objekten eingegangen. Abgeschlossen wird dieses Dokument

Mehr

Umsetzung einer Klassenkarte in einer Programmiersprache

Umsetzung einer Klassenkarte in einer Programmiersprache Klassen in Java Umsetzung einer Klassenkarte in einer Programmiersprache Objektorientierte Programme bestehen (nur) aus Klassendefinitionen In Klassendefinitionen wird die Struktur der Objekte festgelegt,

Mehr

Klassen als Datenstrukturen

Klassen als Datenstrukturen Einstieg in die Informatik mit Java, Vorlesung vom 27.11.07 Übersicht 1 Klassen als Datenstruktur 2 Vereinbarung von Klassen 3 Erzeugen von Objekten - Instanzen einer Klasse 4 Zugriff auf Attribute 5 Initialisierung

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 26 Einstieg in die Informatik mit Java Methoden Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 26 1 Methoden 2 Methodendefinition 3 Parameterübergabe, Methodenaufruf

Mehr

Methoden. Gerd Bohlender. Einstieg in die Informatik mit Java, Vorlesung vom

Methoden. Gerd Bohlender. Einstieg in die Informatik mit Java, Vorlesung vom Einstieg in die Informatik mit Java, Vorlesung vom 2.5.07 Übersicht 1 2 definition 3 Parameterübergabe, aufruf 4 Referenztypen bei 5 Überladen von 6 Hauptprogrammparameter 7 Rekursion bilden das Analogon

Mehr

Software Engineering Klassendiagramme weiterführende Konzepte

Software Engineering Klassendiagramme weiterführende Konzepte Software Engineering Klassendiagramme weiterführende Konzepte Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Klassenattribut: static Implementierung in Java public

Mehr

Klassenmethoden. Klassenvariablen. Für das Auslesen des Studentenzählers definieren wir eine öffentliche Klassenmethode:

Klassenmethoden. Klassenvariablen. Für das Auslesen des Studentenzählers definieren wir eine öffentliche Klassenmethode: Klassenvariablen Klassenmethoden Wir wollen die Zahl der instantiierten Studentenobjekte zählen. Dies ist jedoch keine Eigenschaft eines einzelnen Objektes. Vielmehr gehört die Eigenschaft zu der Gesamtheit

Mehr

Java: Vererbung. Teil 3: super() www.informatikzentrale.de

Java: Vererbung. Teil 3: super() www.informatikzentrale.de Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und

Mehr

C++ - Einführung in die Programmiersprache Objektorientierte Programmierung

C++ - Einführung in die Programmiersprache Objektorientierte Programmierung C++ - Einführung in die Programmiersprache Objektorientierte Programmierung hat Kanten hat eine Farbe hat eine Kantenfarbe Rechteck zeichnen Rechteck einfärben Rechteck drehen Modulare Programmierung Projekt

Mehr

Deklarationen in C. Prof. Dr. Margarita Esponda

Deklarationen in C. Prof. Dr. Margarita Esponda Deklarationen in C 1 Deklarationen Deklarationen spielen eine zentrale Rolle in der C-Programmiersprache. Deklarationen Variablen Funktionen Die Deklarationen von Variablen und Funktionen haben viele Gemeinsamkeiten.

Mehr

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Martin Unold INFORMATIK. Geoinformatik und Vermessung Zusammenfassung Was ist eine Programmiersprache? Eine Sprache, die Formal eindeutig in Maschinenbefehle übersetzbar ist Für Menschen einfacher verständlich ist als Bytecode Zur Formulierung von Datenstrukturen

Mehr

13 OOP MIT DELPHI. Records und Klassen Ein Vergleich

13 OOP MIT DELPHI. Records und Klassen Ein Vergleich 13 OOP MIT DELPHI Delphi war früher "Object Pascal". Dieser Name impliziert eine Funktionalität, welche in der Welt der Programmierung nicht mehr wegzudenken ist: die objektorientierte Programmierung,

Mehr

Einführung in die Programmierung

Einführung in die Programmierung Technische Universität München WS 2003/2004 Institut für Informatik Prof. Dr. Christoph Zenger Testklausur Einführung in die Programmierung Probeklausur Java (Lösungsvorschlag) 1 Die Klasse ArrayList In

Mehr

Javakurs für Anfänger

Javakurs für Anfänger Javakurs für Anfänger Einheit 02: Klassen & Objekte Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Klassen Grundstruktur einer Java-Klasse Eigenschaften (Attribute) Variablen

Mehr

Software Engineering Interaktionsdiagramme

Software Engineering Interaktionsdiagramme Software Engineering Interaktionsdiagramme Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Nachrichtenaustausch Welche Nachrichten werden ausgetauscht? (Methodenaufrufe)

Mehr

Klausur Grundlagen der Programmierung

Klausur Grundlagen der Programmierung Klausur Grundlagen der Programmierung Aufgabenstellung: Martin Schultheiß Erreichte Punktzahl: von 60 Note: Allgemeine Hinweise: Schreiben Sie bitte Ihren Namen auf jedes der Blätter Zugelassene Hilfsmittel

Mehr

3 Objektorientierte Konzepte in Java

3 Objektorientierte Konzepte in Java 3 Objektorientierte Konzepte in Java Bisherige Beobachtungen zu Objekten: werden in Klassen zusammengefasst besitzen Eigenschaften und Verhalten verbergen private Informationen werden geboren, leben und

Mehr

Objektorientierte Programmierung Studiengang Medieninformatik

Objektorientierte Programmierung Studiengang Medieninformatik Objektorientierte Programmierung Studiengang Medieninformatik Hans-Werner Lang Hochschule Flensburg Vorlesung 5 12.04.2017 Was bisher geschah... Objektorientierte Programmierung Klassen und Objekte, Attribute

Mehr

Begriffe 1 (Wiederholung)

Begriffe 1 (Wiederholung) Begriffe 1 (Wiederholung) Klasse Eine Klasse ist der Bauplan für ein oder mehrere Objekte. In einer Klasse werden Dienste (Methoden) zur Verfügung gestellt. Klassennamen beginnen mit einem Großbuchstaben.

Mehr

5. Tutorium zu Programmieren

5. Tutorium zu Programmieren 5. Tutorium zu Programmieren Dennis Ewert Gruppe 6 Universität Karlsruhe Institut für Programmstrukturen und Datenorganisation (IPD) Lehrstuhl Programmierparadigmen WS 2008/2009 c 2008 by IPD Snelting

Mehr

Programmierstarthilfe SS 2008 Fakultät für Ingenieurwissenschaften und Informatik 8. Blatt Für den 16. und

Programmierstarthilfe SS 2008 Fakultät für Ingenieurwissenschaften und Informatik 8. Blatt Für den 16. und Programmierstarthilfe SS 2008 Fakultät für Ingenieurwissenschaften und Informatik 8. Blatt Für den 16. und 17.6.2008 Organisatorisches Um auf die Mailingliste aufgenommen zu werden schicke einfach eine

Mehr

1. Formulieren Sie den Algorithmus nach den oben genannten Kriterien.

1. Formulieren Sie den Algorithmus <Bedienung eines Getränkeautomaten> nach den oben genannten Kriterien. Java 1 Einführung Grundlegende Übungsaufgaben Arbeitsauftrag 1.1 1. Formulieren Sie den Algorithmus nach den oben genannten Kriterien. Beispiel: Bedienung eines Getränkeautomaten

Mehr

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH Java Einleitung - Handout Kurzbeschreibung: Eine kleine Einführung in die Programmierung mit Java. Dokument: Autor: Michael Spahn Version 1.0 Status: Final Datum: 23.10.2012 Vertraulichkeit: öffentlich

Mehr

4 Codierung nach Viginere (Lösung)

4 Codierung nach Viginere (Lösung) Kapitel 4 Codierung nach Viginere (Lösung) Seite 1/14 4 Codierung nach Viginere (Lösung) 4.1 Einführung Blaise de Vigenère lebte von 1523 bis 1596 in Frankreich und war nach dem Studium bei verschiedenen

Mehr

Algorithmische Kernsprache. Zuweisung, einfache und bedingte Anweisung, Blöcke, Schleifen, return, debugging.

Algorithmische Kernsprache. Zuweisung, einfache und bedingte Anweisung, Blöcke, Schleifen, return, debugging. Algorithmische Kernsprache Zuweisung, einfache und bedingte Anweisung, Blöcke, Schleifen, return, debugging. Ausdrücke Anweisungen Ausdrücke bezeichnen einen Wert Kontext stellt Werte von Variablen Werte

Mehr

Objektorientierte Programmierung und Klassen

Objektorientierte Programmierung und Klassen Objektorientierte Programmierung und Klassen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Vorlesung: Einstieg in die Informatik mit Java 16.5.07 G. Bohlender (IANM UNI Karlsruhe) OOP

Mehr

Prof. W. Henrich Seite 1

Prof. W. Henrich Seite 1 Klasse - ist ein benutzerdefinierter Datentyp (Referenztyp) - hat Datenelemente - hat Methoden - Konstruktor ist spezielle Methode zum Erstellen eines Objektes vom Typ der Klasse (Instanz) - jede Klasse

Mehr

Klassen und Objekte. Einführung in Java. Folie 1 von Mai Ivo Kronenberg

Klassen und Objekte. Einführung in Java. Folie 1 von Mai Ivo Kronenberg Klassen und Objekte Einführung in Java Folie 1 von 28 12. Mai 2011 Ivo Kronenberg Inhalt Objekte Klassendefinitionen Datenelemente (Klassenattribute) Instanzieren von Objekten Konstruktoren Vergleich primitive

Mehr

Prozeduren vs. Funktionen

Prozeduren vs. Funktionen Prozeduren vs. Funktionen Mit der Formalisierung wird auch der Unterschied zwischen Prozeduren und Funktionen noch einmal klar. Der Aufruf beider Varianten bewirkt zunächst das Gleiche: die Eingabevariablen

Mehr

Kapitel 3 Das Projekt Bankkonto Seite 1

Kapitel 3 Das Projekt Bankkonto Seite 1 Kapitel 3 Das Projekt Bankkonto Seite 1 3 Das Projekt Bankkonto Nun wirst du dich etwas gründlicher mit dem Quelltext einer Klasse beschäftigen. Du lernst, wie zwei Objekte eine gemeinsame Aufgabe erledigen.

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 24 Einstieg in die Informatik mit Java Klassen als Datenstrukturen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 24 1 Klassen als Datenstruktur 2 Vereinbarung von

Mehr

5.6 Vererbung. Vererbung

5.6 Vererbung. Vererbung 5.6 Vererbung Klassen können zueinander in einer "ist ein"- Beziehung stehen Beispiel: Jeder PKW ist ein Kraftfahrzeug, jedes Kraftfahrzeug ist ein Transportmittel aber: auch jeder LKW ist ein Kraftfahrzeug

Mehr

Felder - Arrays. Typ feldname[] = new Typ[]; Beispiel: double vektor[] = new double[5]; auch eine Initialisierung ist möglich.

Felder - Arrays. Typ feldname[] = new Typ[<ganze Zahl >]; Beispiel: double vektor[] = new double[5]; auch eine Initialisierung ist möglich. Felder Felder - Arrays Variable gleichen Types können in Feldern (array) zusammengefasst werden. Typ[] feldname; oder Typ feldname[]; dabei kann unter Benutzung des new-operators gleich die Dimension zugewiesen

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung Kapitel 6 Vererbung Vererbung 1 Ziele Das Vererbungsprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 25 Einstieg in die Informatik mit Java Objektorientierte Programmierung und Klassen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 25 1 Die Philosophie 2 Definition

Mehr

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 17: 3-Schichten-Architektur 2

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 17: 3-Schichten-Architektur 2 Universität Osnabrück 1 3 - Objektorientierte Programmierung in Java Zur Erinnerung: Aufteilung der Schichten GUI Vorlesung 17: 3-Schichten-Architektur 2 Fachkonzept Fachkonzept - Datenhaltung Datenhaltung

Mehr

Kapitel 12 Dokumentation und Zugriffsrechte

Kapitel 12 Dokumentation und Zugriffsrechte Kapitel 12 Dokumentation und Zugriffsrechte Seite 1 / 6 Kapitel 12 Dokumentation und Zugriffsrechte Lernziele: Dokumentation mit Hilfe von Javadoc Datenkapselung über Zugriffsrechte 12.1 Dokumentation

Mehr

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12 Grundlagen: Folge 19 - Bäume 19.1 Binärbäume - Allgemeines Unter Bäumen versteht man in der Informatik Datenstrukturen, bei denen jedes Element mindestens zwei Nachfolger hat. Bereits in der Folge 17 haben

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 18 Einstieg in die Informatik mit Java Klassenvariablen, Klassenmethoden Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 18 1 Klassenmethoden 2 Besonderheiten von Klassenmethoden

Mehr

Wiederholung Wozu Methoden? Methoden Schreiben Methoden Benutzen Rekursion?! Methoden. Javakurs 2012, 3. Vorlesung

Wiederholung Wozu Methoden? Methoden Schreiben Methoden Benutzen Rekursion?! Methoden. Javakurs 2012, 3. Vorlesung Wiederholung Wozu? Schreiben Benutzen Rekursion?! Javakurs 2012, 3. Vorlesung maggyrz@freitagsrunde.org 5. März 2013 Wiederholung Wozu? Schreiben Benutzen Rekursion?! 1 Wiederholung 2 Wozu? 3 Schreiben

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

Einführung in die Programmierung mit Java. Hörsaalübung

Einführung in die Programmierung mit Java. Hörsaalübung Einführung in die Programmierung mit Java Hörsaalübung Folie 1 Grundlagen der Objektorientierung Seit Anfang der Neunzigerjahre Standardmethode der Softwareentwicklung. Die OOP Objektorientierte Programmierung

Mehr

Klassendefinitionen verstehen

Klassendefinitionen verstehen Klassendefinitionen verstehen Java-Programme bestehen aus Klassendefinitionen und sonst nichts! 1 1.0 Konzepte Felder Konstruktoren Methoden Parameter Zuweisungen ( = ) Anweisungen bedingte Anweisungen

Mehr

3 Klassen, Attribute, Methoden

3 Klassen, Attribute, Methoden 3 Klassen, Attribute, Methoden Jörn Loviscach Versionsstand: 10. April 2011, 10:25 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen in der Vorlesung. Videos dazu: http://www.j3l7h.de/videos.html

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

Arbeiten mit UMLed und Delphi

Arbeiten mit UMLed und Delphi Arbeiten mit UMLed und Delphi Diese Anleitung soll zeigen, wie man Klassen mit dem UML ( Unified Modeling Language ) Editor UMLed erstellt, in Delphi exportiert und dort so einbindet, dass diese (bis auf

Mehr

Klassen mit Instanzmethoden

Klassen mit Instanzmethoden Klassen mit Instanzmethoden Gerd Bohlender Institut für Angewandte und Numerische Mathematik Vorlesung: Einstieg in die Informatik mit Java 3.12.07 G. Bohlender (IANM UNI Karlsruhe) OOP und Klassen 3.12.07

Mehr

Probeklausur: Programmierung WS04/05

Probeklausur: Programmierung WS04/05 Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,

Mehr

RÖK Typo3 Dokumentation

RÖK Typo3 Dokumentation 2012 RÖK Typo3 Dokumentation Redakteur Sparten Eine Hilfe für den Einstieg in Typo3. Innpuls Werbeagentur GmbH 01.01.2012 2 RÖK Typo3 Dokumentation Inhalt 1) Was ist Typo3... 3 2) Typo3 aufrufen und Anmelden...

Mehr